次の方法で共有


既定で無効になっているコンパイラの警告

コンパイラには、既定でオフになっている警告が用意されています。警告が既定でオフになっている場合、ほとんどのユーザーはその警告を参照しません。ただし、次のオプションの 1 つを使用してこのような警告を有効にできます。

  • #pragma warning(default : warning_number)
    指定された警告 (warning_number) は既定のレベルで有効になっています。警告に関するドキュメントには、既定のレベルの警告が記載されています。

  • #pragma warning(warning_level : warning_number)
    指定された警告 (warning_number) は指定されたレベル (warning_level) で有効になっています。

  • /Wall
    /Wall は既定では無効のすべての警告を有効にします。

既定では、次の警告はオフになっています。

C4061 (レベル 4)

switch 中の 'identifier' ('enumeration' の) は case ラベルに与えられません。

C4062 (レベル 3)

switch 中の 'identifier' ('enumeration' の) は与えられません。

C4191 (レベル 3)

"operator/operation": "式の種類" から "必要な型" への安全でない変換

C4242 (レベル 4)

'identifier': 'type1' から 'type2' に変換しました。データが失われている可能性があります。

C4254 (レベル 4)

'operator': 'type1' から 'type2' への変換です。データが失われる可能性があります。

C4255 (レベル 4)

'function': 関数プロトタイプがありません: '()' を '(void)' に変換します。

C4263 (レベル 4)

'function': メンバー関数はどの基本クラスの仮想メンバー関数もオーバーライドしません

C4264 (レベル 1)

'virtual_function': 仮想メンバー関数用に基本クラス 'class' から使用可能なオーバーライドはありません; 関数は隠されます。

C4265 (レベル 3)

'class': クラスは仮想関数を含んでいますが、デストラクターは仮想デストラクターではありません。

C4266 (レベル 4)

'function': 仮想メンバー関数用に基本クラス '型' から使用可能なオーバライドはありません。関数は隠されます。

C4287 (レベル 3)

'operator': 符号なしまたは負の定数が一致していません。

C4289 (レベル 4)

非標準の拡張が使用されています : 'var' : for ループで宣言したループ コントロール変数が for ループ スコープの外側で使用されています。

C4296 (レベル 4)

'operator': 式は常に false です。

C4302 (レベル 2)

'変換': 'type1' から 'type2' へ切り詰めます。

C4350 (レベル 1)

動作変更: 'member1' が 'member2' の代わりに呼び出されました。

C4355

'this' : ベース メンバー初期化リストで使用されました。

C4365 (レベル 4)

'action': 'type_1' から 'type_2' に変換しました。signed/unsigned が一致しません。

C4412 (レベル 2)

'function': 関数のシグネチャが型 '型' を含んでいます。C++ オブジェクトを、純粋なコードと混合またはネイティブ コードとの間で渡すことは安全ではありません。

C4431 (レベル 4)

型指定子がありません - int と仮定しました。メモ: C は、現在 int を既定値としてサポートしていません

C4435 (レベル 4)

" class1 ": /vd2 の下のオブジェクトのレイアウトは、仮想基本 " class2 " が原因で変更します

C4437 (レベル 4)

仮想基本 " class1 " から " class2 " への dynamic_cast は、状況によっては失敗する

C4514 (レベル 4)

'function': 参照されていないインライン関数は削除されました

C4536 (レベル 4)

'type name': 型名がメタデータの限度である 'limit' 文字を超えています。

C4545 (レベル 1)

コンマ前の式は、引数リストのない関数として評価します

C4546 (レベル 1)

コンマの前の関数呼び出しに引数一覧がありません。

C4547 (レベル 1)

'operator': コンマの前の演算子は無効です。有効な演算子を指定してください。

C4548 (レベル 1)

コンマ前の式は無効です。有効な式を指定してください。

C4549 (レベル 1)

'operator': コンマの前の演算子は無効です。候補 'operator'

C4555 (レベル 1)

式の影響はありません; 式の副作用が必要です。

C4557 (レベル 3)

'__assume' は影響 'effect' を含んでいます。

C4571 (レベル 4)

情報: catch(...) の意味が Visual C++ 7.1 から変更されています。構造化例外 (SEH) はキャッチされません。

C4619 (レベル 3)

#pragma warning: 警告番号 'number' がありません。

C4623 (レベル 4)

'derived class': 基本クラスの既定コンストラクターにアクセスできないため、既定のコンストラクターは生成できませんでした

C4625 (レベル 4)

'derived class': 基本クラスのコピー コンストラクターにアクセスできないため、コピー コンストラクターは生成できませんでした

C4626 (レベル 4)

'derived class': 基本クラスの代入演算子にアクセスできないため、代入演算子は生成できませんでした

C4628 (レベル 1)

digraphs は -Ze でサポートされていません。文字のシーケンス 'digraph' は 'char' の代替トークンとして解釈されません。

C4640 (レベル 3)

'instance': ローカル スタティック オブジェクトの構築がスレッド セーフではありません

C4641 (レベル 3)

XML ドキュメント コメントはあいまいな相互参照を含んでいます

C4668 (レベル 4)

'symbol' は、'directives' を '0' に置換するプリプロセッサ マクロとして定義されていません。

C4686 (レベル 3)

'ユーザー定義型': 動作と UDT の戻り値の呼び出し規約に変更がある可能性があります。

C4692 (レベル 1)

'関数': 公開されたメンバーのシグネチャはアセンブリ プライベート ネイティブ型 'native_type' を含んでいます

C4710 (レベル 4)

'function': インライン関数ではありません

C4711 (レベル 1)

関数 'function' にインライン展開を選択しました。

C4738 (レベル 3)

メモリに 32 ビットの浮動結果を格納します。パフォーマンスが低下する可能性があります

C4820 (レベル 4)

'バイト' : 'バイト' バイトのパディングを 'コンスラクト' 'member_name' の後に追加しました。

C4826 (レベル 2)

'type1' から 'type2' への変換は符号拡張されています。これは、予期しない実行時の動作を発生させる可能性があります。

C4836 (レベル 1)

非標準の拡張機能が使用されています : '型' : ローカル型または名前のない型を 'テンプレート' 引数として使用することはできません

C4837 (レベル 4)

検出されたトライグラフ: '??%c' は '%c' に置き換えられました

C4905 (レベル 1)

'LPSTR' にキャストされた幅の広いリテラル文字列

C4906 (レベル 1)

'LPWSTR' にキャストされたリテラル文字列

C4917 (レベル 1)

'declarator': GUID はクラス、インターフェイス、または名前空間のみに関連付けることができます

C4928 (レベル 1)

コピー初期化が正しくありません。複数のユーザー定義の変換が暗黙的に適用されています。

C4931 (レベル 4)

number ビット ポインター用にタイプ ライブラリがビルドされていることを想定します。

C4946 (レベル 1)

reinterpret_cast が関連クラスの間で使用されました : 'class1' と 'class2'

C4962

'function': 最適化によってプロファイル データに矛盾が生じたため、ガイド付き最適化のプロファイルを無効にします

参照

関連項目

warning