我正在尝试在main.h中声明一个方法,如下所示:
void buildGraph(int gNum, Graph** gArray);
其中Graph是一个类,我正在尝试将指针传递给一个指向Graph对象的指针数组。
我收到错误消息:“图表尚未声明”。 即使我在页面顶部有#include“graph.h”,我也一直在使用 到目前为止,图表类很多,所以我知道它有效。
有什么想法吗?
答案 0 :(得分:3)
您可能在文件系统中有多个graph.h文件,并且包含了错误的文件。如果是因为有意复制删除了不需要的副本,如果是因为与C ++标准库或其他库标题发生冲突,您应该重命名头文件以防止此类冲突。
答案 1 :(得分:1)
这种情况的常见可能性是Graph.h中包含不正确的包含保护,可能是您正在使用的另一个头文件的遗留。
也就是说,确保你应该在Graph.h中拥有的“#ifndef GRAPH_H”这样的行真的应该是......
(但实际上,如果没有更多信息回答这个问题,那就很难了。)
答案 2 :(得分:0)
也许名称Graph在命名空间中?这个graph.h文件说的是 - 顶层的Graph,还是命名空间语句中的?