私はC#クラスで定義されたプライベートconst intを持っています。このint mod 3!= 0の値を指定すると、エラーが発生しコンパイルが失敗します。これをどのように行うことができますか?
回答:
回答№1は4ティモシー・コウリがそれを得ました。それはこれでなければなりません:
int compilerError = 1 / (MY_CONST % 3 == 0 ? 1 : 0);
回答№2については2
そこには #エラー 生成のためのプリプロセッサ指令コンパイル時エラーがある場合、const値の存在に基づく方法はありません。値が割り当てられない "DEBUG"のようなコンパイラシンボルでのみ動作します。
回答№3の場合は1
申し訳ありませんが、私が下に言ったコードは "仕事を得ませんでしたが、これは:)
int pointless = 1 / (MY_CONST % 3);
これがうまくいく理由は、コンパイル時に「ゼロになる」エラーが発生する可能性があるためです。あなたの "MY_CONST"フィールドは、(一度3で修飾された)0に等しくないものでなければなりません。
回答№4の場合は-1
これを試して:
if (MY_CONST % 3 != 0) { int compilerError = 1 / 0; }