15

.hpp / .cppテンプレートを使用して新しいクラスを作成するときに、 Eclipse CDTで自動生成されたインクルードガードの名前に名前空間を追加することは可能ですか(そしてどのように) ?

私にとって、Eclipseは名前空間を使用して新しいクラスを適切に生成しますが、インクルードガードには名前空間が含まれていないため、同じヘッダーファイルが2つの異なるディレクトリに2回存在する場合、インクルードできるのは1つだけです。

私の場合、名前空間の名前、Eclipseプロジェクト名、およびソースディレクトリの名前はすべて同じであるため、これらはインクルードガードのプレフィックスとしての代替となる可能性があります。

4

2 に答える 2

6

したがって、[C / C ++]->[コードスタイル]->[コードテンプレート]の[設定]ダイアログで、必要なものに近づくようにテンプレートを変更できます。たとえば、ガードに名前空間が必要な場合は、次のように実行できます。

${filecomment}

#ifndef ${namespace_name}_${include_guard_symbol}
#define ${namespace_name}_${include_guard_symbol}

${includes}

${namespace_begin}

${declarations}

${namespace_end}

#endif /* ${namespace_name}_${include_guard_symbol} */`
于 2011-07-22T02:03:56.633 に答える
2

だけでなく、少なくともファイルのパスまたはuuidを取得するように設定できる非表示の設定がありますCLASSNAME_H_ここで私の完全な答えを参照してください。

于 2012-03-03T12:01:31.247 に答える