5

minGW の C++ で次の警告を無効にするにはどうすればよいですか?

warning: unused variable 'x' [-Wunused-variable]

Eclipse CDT では、警告番号が見つかりません。

../src/subfolder/ClassTwo.cpp:20:8: warning: unused variable 'x' [-Wunused-variable]

私はこれをやってみました:

#pragma warning(push)
#pragma warning(disable: ?) //which number?
#include "subfolder/ClassTwo.h"
#pragma warning(pop)

しかし、うまくいきませんでした。

私の質問:

  1. Eclipse CDT でこの警告番号を取得するにはどうすればよいですか?
  2. pragma ディレクティブはどのように記述すればよいですか?
4

3 に答える 3

6

「未使用の変数」の警告を修正するのはほぼ常に簡単なので、プラグマでパッチを適用するよりも実際のコードを修正することを強くお勧めします (これにより、他の将来のエラーも隠される可能性があります。たとえば、新しい関数を追加すると:

 int foo(int x, int y)
 {
      return x * x;
 }

おっと、それはタイプミスです。そうあるべきreturn x * y;です - 警告は、これが事実であることを示します。

誰かが言及したように、未使用のパラメーターは、パラメーターの名前を削除することで処理されます。

 int foo(int x, int)  // Second parameter, y is not used
 {
      return x * x; 
 }

それがローカル変数である場合は、(void)y(おそらくマクロで)使用して「偽の使用」を行うことができます。

 int bar(int x)
 {
    int y;    // Not used. 
    (void)y;
 }

また

 #define NOT_USED(x) (void)(x)

      int bar(int x)
 {
    int y;    // Not used. 
    NOT_USED(y);
 }
于 2013-05-14T15:47:29.090 に答える