W8075 問題のあるポインタの変換 (-wsus) (C++)

提供: RAD Studio
移動先: 案内検索

コンパイラのエラーと警告(C++):インデックス への移動

(この警告を抑止するコマンドラインオプションは -w-sus)

コンパイラは,ポインタの変換を検出しましたが,この変換によってポインタは別の型をポイントするようになります。

この変換が妥当な場合,この警告を抑止するには,キャストを使用する必要があります。

この警告の原因として,C コンパイラがある型の関数ポインタを別の型に変換する場合がよくあります(C++ コンパイラは,このような変換を要求されるとエラーを生成)。この警告は,型キャストを実行することで抑止できます。Windows プログラマがよく経験する例を次に示します。



 #define STRICT
 #include <windows.h>
 LPARAM _export WndProc( HWND , UINT , WPARAM , LPARAM );
 test() {
    WNDCLASS wc;
    wc.lpfnWndProc = WndProc;  //警告
 }



次のように lpfnWndProc に代入すると,この警告は抑止されます。



 wc.lpfnWndProc = ( WNDPROC ) WndProc;