エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
VCでSetWindowLongPtrを使用したときの警告の対処法 - 閑古鳥
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
VCでSetWindowLongPtrを使用したときの警告の対処法 - 閑古鳥
32ビット環境ではSetWindowLongPtrはSetWindowLongのエイリアスになります。それとは別に、VCのデフォル... 32ビット環境ではSetWindowLongPtrはSetWindowLongのエイリアスになります。それとは別に、VCのデフォルトでは /Wp64 オプションが有効になっています。これは64ビットOSへの移植性が損なわれる場合に警告を出すと言うもので、 void* p = &p; unsigned long i = (unsigned long)p; // C4311 上記のようなキャストをする際に警告(C4311)を出してくれるというもの。64ビット環境ではポインタは64ビットになるので、32ビットのlong型にキャストするのはまずいよ、と言ってくれます。 どちらもそれだけで見ればどうということないものなのですが(むしろ警告は便利)、SetWindowLongの第三引数はlong型なので、こいつにポインタを渡す場合longにキャストする必要があり、そこで警告が出てしまいます。SetWi