私はこのように設定されたプロジェクトを持っています:
Header (.h) files
________________ _________
| Main Big Class |---------------| ModuleB |
| - libraries | _________ | -SubMod |
|________________|--| ModuleA | |_________|
| -SubMod | |
|_________| ____|____
| | SubModB |
____|____ |_________|
| SubModA |
|_________|
All Code (.cpp) files have #include "Main Big Class.h"
したがって、ModuleA のサブモジュールでは、ヘッダーにインクルードがなく、.cpp ファイルに#include "Main.h"しかありません。事業。ModuleA には、すべてのサブモジュールのインクルードがあり、ModuleA の任意のサブモジュールでベクトルと文字列を使用できます。
ModuleB に移動したので、新しいサブモジュールを追加し、以前と同じように実行しました。ModuleB には次のものがあります。
#include "SubModuleB1.h"
#include "SubModuleB2.h"
しかし、コンパイルしようとすると、Visual Studio は、B からのこれらのサブモジュールに文字列とベクトルがある行にエラーを表示します。
行にコメントを付けてコンパイルし、コメントを解除するとコンパイルされる場合がありますが、これを行ごとに実行する必要があり、エラーが 1 つあると、すべてを再度コメントしない限りコンパイルされません。
すでにクリーンアップとリビルドを試みましたが、うまくいきませんでした。なぜこれが起こるのかわかりません。
これはなぜ起こり、どうすれば修正できますか?
編集:エラーは1行あたり3です:
error C2143: syntax error : missing ';' before '<'
error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
error C2238: unexpected token(s) preceding ';'