我尝试使用 c++ 将一个类放在一个单独的文件中,但不包括 .cpp 文件,它不起作用。
这是类示例的 CPP 文件
//Example.cpp
#include "Example.h"
#include<iostream>
using namespace std;
Example::Example()
{
cout<<"I am am Executed\n";
}
这是头文件
//Example.h
#ifndef EXAMPLE_H
#define EXAMPLE_H
class Example
{
public:
Example();
};
#endif
现在如果我不将 C++ 文件包含到我的主函数文件中,它会给出一个错误
#include "Example.h"
//#include "Example.cpp"
#include<iostream>
using namespace std;
int main()
{
Example aak;
return 0;
}
所以在这里我注释掉了//#include "Example.cpp",它会给我一个错误,说明
/tmp/ccuHMRJB.o: In function `main':
main.cpp:(.text+0x10): undefined reference to `Example::Example()'
collect2: ld returned 1 exit status
但是,如果我取消注释 #include "Example.cpp" 它工作得很好!给我一个输出
我被执行了!
我不明白为什么我需要包含两个文件(.h 和 .cpp)来执行程序。只要我认为它应该只包含 .h 文件就可以工作,但它没有......