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 ファイルを含めるだけで機能するはずですが、そうではありません....