全局函数如何调用类中的特定函数?

时间:2011-04-10 19:46:18

标签: c++ vector global

我有一个全局函数和一个包含很少成员函数的类,如下所示:

功能Vert()在控制台上打印为空白。

调试时我发现Vertice1 [i]的值为null,因此可能是控制台上的空白。但是dispFileName确实包含值。

我是否正确地将值传递给向量?

//矢量定义:

1 个答案:

答案 0 :(得分:3)

在第一个for循环结束后,你有一个指向Vertex对象的指针向量。但实际的Vertex对象超出范围,因为它们是第一个for循环的本地对象。所以你的指针在那时无效,并且你得到随机结果(在这种情况下,是空字符串)。

这里我假设Graph<T, U>::Vertice1std::vector<Vertex<T, U>*>而不是涉及智能指针的东西。

最简单的解决方案是使矢量包含Vertex对象,而不是指向Vertex对象的指针。