我正在使用Dev-C++ 5.2.0.1

我以一个示例为例,该示例如何将类放在网站上的另一个文件中,但是这导致了错误。

在文件class.h中,我有:

class MyClass
{
public:
  void foo();
  int bar;
};

在文件class.cpp中,我有:
#include "class.h"

void MyClass::foo()
{
    cout<< "test";
}

在文件main.cpp中,我有:
#include "class.h"
using namespace std;
int main()
{
  MyClass a;
  a.foo();
  return 0;
}

这是我得到的错误:
[链接器错误] C:\ Users \ Matthew \ AppData \ Local \ Temp \ cccWe7ee.o:main.cpp :(。text + 0x16):未定义对“MyClass::foo()”的引用
collect2:ld返回1退出状态

我做错什么了吗?

最佳答案

新答案。

您是否正在将所有文件编译并链接在一起?在gcc中,您将执行以下操作:

gcc -o myExe class.cpp main.cpp

我不太确定dev-c++,但我想它并没有太大不同。

07-24 09:44
查看更多