虽然我包含了我的.h文件(C ++),但是在未声明的情况下遇到了问题

时间:2013-03-10 17:37:38

标签: c++

我试图使用链表实现堆栈,我的Node结构是我的ListStack类的私有数据。当我尝试在main.cpp中使用Node时,它表示Node是未声明的标识符。顺便说一句,我使用这个堆栈和一切来实现RPN计算器,我有3个文件calculator.h,calculator.cpp和main.cpp(如果这是相关的)

这是结构:

struct Node
{
    double data;
    Node* under;
};

Node* top;

我已将.h文件(calculator.h)与#include "calculator.h"

一起包含在内

它无法识别的第一个声明是Node* current= top;它也无法识别顶部。有什么理由吗?我是这个网站的新手,很抱歉,如果我没有提供足够的信息。

1 个答案:

答案 0 :(得分:2)

如果你的结构是一个类的私有变量,你不能这样称呼它,你需要像

这样的东西
MyClass::Node mynode;