私のプロジェクトには、次のフォルダー構造があります。
Project/
--Classes/
----Class1.h
----Class1.cpp
--main.cpp
「Class1.h」にはメソッド定義が含まれており、「Class1.cpp」は「Class1.h」のソース コードです。
「Class1.h」のソースコードは次のようになります。
class Class1 {
public:
void do_something();
};
「Class1.cpp」のソースコードは次のようになります。
#include "Class1.h"
void Class1::do_something() {
//
}
「main.cpp」のソースコードは次のようになります。
#include "Classes/Class1.h"
int main(int argc,char** args) {
Class1* var = new Class1();
var->do_something();
return 0;
}
ただし、「main.cpp」をコンパイルすると、コンパイラは Class1 のメソッドの実装がどこにあるかを認識しないため、未定義参照に関するリンク エラーが表示されます。
コンパイラがコンパイルする必要があるソース ファイルを認識できるように、コマンド ラインにパスを追加する必要がありますか? 「Class1.cpp」もコンパイルする必要があることをコンパイラに伝える方法は?