私のファイルでは、特定の条件が満たされている場合にのみファイルをインクルードしたいと考えています。条件が満たされた場合にcppファイルをインクルードする
目的としたコードは、私は本当にこの問題を解決する方法がわからない
#if condition1
#include file1.cpp
#endif
#if condition2
#include file2.cpp
#endif
のようなものです。 #includeはプリプロセッサ文であり、if条件はプログラム内で計算する必要があります。上記のコードでは、どちらの条件も満たされていないため、ファイルはロードされません。私が
に変更した場合if condition1{
#include file1.cpp
...
if文に関係なく、プリプロセッサが#include文を見つけたので、すべてのファイルが含まれます。
これまでのところ、私は3番目の可能性を見つけていません。
どのような状態をテストしたいですか?最初のコードはコンパイル時に条件が成立する限り有効です。実行時条件をテストする場合は、プリプロセッサでは実行できないため、別の方法でコードを設計する必要があります。 – Krapow
#ifdef myFlag #include #else #include #endifはこのトリックを行う必要があります。なぜ.cppファイルを含めるのですか? –
paweldac
私はプリプロセッサではできないと感じていました。 .cppはデータファイルです。コードのいくつかの結果に応じて、正しいものが読み込まれます。フォーマットは、コードに非常に簡単に含めることができるように設計されています。 – Glostas