我收到一个 g++ 错误(对“SomeClass::SomeClass(int)”和“SomeClass::~SomeClass”的 undefined reference ),内容如下:
/*
* SomeClass.h
*
*/
#ifndef SOMECLASS_H_
#define SOMECLASS_H_
class SomeClass
{
public:
SomeClass();
SomeClass(int someInt);
~SomeClass();
};
#endif /* SOMECLASS_H_ */
/*
* SomeClass.cpp
*
*/
#include "SomeClass.h"
SomeClass::SomeClass()
{
}
SomeClass::SomeClass(int someInt)
{
}
SomeClass::~SomeClass()
{
}
/*
* main.cpp
*
*/
#include "SomeClass.h"
int main()
{
SomeClass::SomeClass someObject(1);
return 0;
}
最佳答案
SomeClass::SomeClass someObject(1);
首先,这是无效的,因为 SomeClass::SomeClass
命名了构造函数,而不是类类型。只需说 SomeClass
。那么您可能会忘记链接到 SomeClass.cpp
的目标文件。确保在编译可执行文件时将其包含在编译器命令行中,或者通过您使用的任何 IDE 将其添加到项目配置中。
关于c++ - 以下 g++ 类构造中的错误是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3241899/