3

VS2010 C ++で、次のようなことをした場合にIDEに文句を言う方法はありますか?

if (somevar = 2)
{
    ...

=の代わりに==を書くことに注意を払うようにしていますが、C ++だけでなく、VBや他の言語も使用しているため、たまにしか発生しません。

私のせいに関連するエラーを見つけるのに時々本当に長い時間がかかります。

(上記の例のように)変数にも新しい値を割り当てるifステートメントを実際に記述したい可能性はかなり小さいと思います。そのため、VS2010に私の考えられる欠陥について教えてくれるオプションが含まれているのではないかと期待していますが、見つかりませんでした。

このようなオプションはありますか?

4

2 に答える 2

6

はいあります:

warning C4706: assignment within conditional expression

すべての(MSVSではすべてではない)警告をオンにしていることを確認してください。(project properties -> C/C++ -> General -> Warning Level

別の方法はヨーダ記法(2 == somevar)を使用することですが、それは醜いです。:)

于 2013-01-22T17:16:46.207 に答える
0

ソリューションエクスプローラーでプロジェクト名を右クリックし、[プロパティ]を選択して、[構成のプロパティ]、[構成のプロパティ]の順に移動します。C / C ++ | 一般、および警告レベルをレベル4に設定します。エラーは表示されませんが、警告が表示されます。

警告C4706:条件式内での代入

于 2013-01-22T17:23:56.853 に答える