传递**类作为参数

时间:2009-05-15 06:37:00

标签: c++ class

我正在尝试在main.h中声明一个方法,如下所示:

void buildGraph(int gNum, Graph** gArray);

其中Graph是一个类,我正在尝试将指针传递给一个指向Graph对象的指针数组。

我收到错误消息:“图表尚未声明”。 即使我在页面顶部有#include“graph.h”,我也一直在使用 到目前为止,图表类很多,所以我知道它有效。

有什么想法吗?

3 个答案:

答案 0 :(得分:3)

您可能在文件系统中有多个graph.h文件,并且包含了错误的文件。如果是因为有意复制删除了不需要的副本,如果是因为与C ++标准库或其他库标题发生冲突,您应该重命名头文件以防止此类冲突。

答案 1 :(得分:1)

这种情况的常见可能性是Graph.h中包含不正确的包含保护,可能是您正在使用的另一个头文件的遗留。

也就是说,确保你应该在Graph.h中拥有的“#ifndef GRAPH_H”这样的行真的应该是......

(但实际上,如果没有更多信息回答这个问题,那就很难了。)

答案 2 :(得分:0)

也许名称Graph在命名空间中?这个graph.h文件说的是 - 顶层的Graph,还是命名空间语句中的?