c++ - 以下 g++ 类构造中的错误是什么?

标签 c++

我收到一个 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/

相关文章:

c++ - 如何将nana编译成静态库

c++ - 什么是 "myfunc"与 "myfunc()"

c++ - 具有右值引用成员的通用复制构造函数

C++:如何在两个不同的重载函数中使用具有两个不同名称的相同数据类型?

c++ - 如何确定索引模式 SDL_Surface 是否具有透明度?

c++ - 使用 emscripten 将位图缓冲区渲染到 HTML5 Canvas 中

c++ - _mm_crc32 给出与手动版本不同的结果

c++ - 交换数学运算的顺序

c++ - 如何知道析构函数中的堆栈损坏来自何处?

c++ - 方法链的缩进