他の人のコードに問題があります。ヘッダファイルが順不同であるようです。 (たとえば、再定義エラーが発生していますが、そのうちのいくつかは同じファイルにもあります)。Visual Studioの-showIncludesフラグと同様に、C++ Builderコンパイラが使用している#includeツリーを見ると便利です。そのような機能はありますか?もしそうなら、どのように私はそれにアクセスするのですか?私は特にC++ Builder 2007を使用しています。C++ Builderで#include階層を表示する
1
A
答えて
0
これは通常、大域定数、変数、時には#defines
を含むファイルを複数回含む場合に発生します。あなたはすべて編集することを計画している場合を除き、マスターForm
子Form
のSなどが、そのうちのいくつかは、同じLIBSを使用含まれていMDIアプリを...
には、階層がこのために役に立たないため、これは非常に一般的ですあなたは
#ifndef _file_name_h
#define _file_name_h
// here your source and includes
#endif
文を使用してこのようなすべてのファイルをカプセル化する必要があり、これを改善するために、後で上の問題を引き起こす可能性がソースファイル#include
順(特に互換)...
。この例のように:(#define _file_name_h
はまだ定義されていない間)源としてプリコンパイラ・レベルで複数の定義とコンパイルを防止する
のみ初めて処理されます。
0
悲しいことに、#include
dファイルの階層を表示するためのBorland Cコンパイラオプションはありません。 EmbarcaderoのBCC32 CLI docsを参照してください。
しかし、Borland C Compiler Preprocessorを使用することもできます(クリーンではありません)。
CPP32 -Sr source.cpp # outputs source.i with comments and indentation retained