G++ でコンパイルするファイルが 3 つあります。メイン ファイルは次のようになります。
//main.cpp
#include "test.hpp"
int main(int argc,char** args) {
//
}
2 番目のファイルはヘッダー ファイルです。
//test.hpp
namespace shared {
class test {
//constructor
test();
};
}
最後のファイルは、test.hpp のコード ファイルです。
//test.cpp
shared::test::test() {
//
}
そして、このように G++ を使用してコンパイルします。
g++ -c main.cpp test.cpp
ただし、G++ は、ファイル 'test.cpp' 内の未定義の識別子 'shared' について不平を言います。コマンド ラインでは、ヘッダー ファイルを含むファイル 'main.cpp' を既に渡しています。これを修正する方法は?すべての「#include」を main.cpp に配置したいだけで、それ以外の場所には配置したくありません。