有这个恼人的错误。
我不断收到对类::方法的 undefined reference
这是我想做的代码
student::student(){
conscience* c;
unsigned short choice = rand() % 4;
if (choice == 0){
c = new betray();
}
if (choice == 1){
c = new silent();
}
if (choice == 2){
c = new confused();
}
if (choice == 3){
c = new experienced();
}
但我一直收到错误。
这个工作很好,但不在主类构造函数中,而是通过参数传递
student::student(conscience* c){
m_Conscience = c;
}
提前致谢。
编辑:确切错误:对 `betray::betray()' 的 undefined reference
最佳答案
undefined reference 可能意味着以下之一:
- 您在基类中有一个方法声明,您调用了该方法但从未在任何派生类中实现。
- 或者,它已实现,但您没有链接到它,因此链接器无法找到它。
我建议您检查一下您是否链接到 betray.o。检查你的生成文件。如果您没有 makefile,我鼓励您编写一个。
关于C++ 类组合错误 : unrefined reference,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12100066/