我有一个c ++项目,它有一个名为A
的类。
我还有一个名为Definitions.h
的头文件。
我在头文件中写了以下代码:
A* aClass;
在应用程序的主要内容中,我写道:
aClass = new A();
这给了我使用它的其他类的类A
的重定义错误。
因此,在搜索网页后,我发现应将extern
关键字添加到减速中,因此我将头文件的类减速修改为:
extern A* aClass;
现在我收到LNK2001
错误。
我错过了什么?
答案 0 :(得分:0)
我需要看到你的代码才能完全理解错误的位置,但你可以试试这个:
在标题中:
extern A* aClass;
在main.cc中,在main函数之前:
A* aClass;
并在主要功能内部:
int main()
{
...
aClass = new A();
...
}
希望这有帮助!