2009年7月7日火曜日

error C3867: 'TRecvDlg::RecvFile': 関数呼び出しには引数リストがありません。メンバへのポインタを作成するために '&TRecvDlg::RecvFile' を使用してください

IP Messanger を いじくろうと思い、Microsoft Visual C++ 2008 Express Edition でコンパイルしたら
わんさかエラーが出たので、その備忘録。
エラー【その3】!!!


2005のエラーとして、googleキャッシュに残っていたものを抜粋(ここでは'call')だが。。。
関数呼び出しには引数リストがありません。メンバへのポインタを作成するために 'call' を使用してください
メンバ関数へのポインタが正しく初期化されていません。
この警告は、ポインタからメンバへの準拠が強化された Visual C++ 2005 で行ったコンパイラ準拠作業の結果として生成されることがあります。Visual C++ 2005 より前にコンパイルされたコードでは C4867 が生成されるようになりました。詳細については、「Breaking Changes in the Visual C++ 2005 Compiler」を参照してください。
この警告は、常にエラーとして表示されます。この警告を無効にするには、warning プラグマを使用します。C4867 および MFC/ATL の詳細については、「_ATL_ENABLE_PTM_WARNING」を参照してください。

以下のような時に出る「C4867」エラー
  1. // C4867.cpp  
  2. // compile with: /c  
  3. class A {  
  4. public:  
  5.    void f(int) {}  
  6.   
  7.    typedef void (A::*TAmtd)(int);  
  8.   
  9.    struct B {  
  10.       TAmtd p;  
  11.    };  
  12.   
  13.    void g() {  
  14.       B b = {f};   // C4867  
  15.       B b2 = {&A::f};   // OK  
  16.    }  
  17. }  



免責
この記事やプログラムによって生じた事故・損害などは一切保証致しません。ご自身の責任でご使用ください。

子育てブログ「おとう日記」はじめました。
興味ある方、是非ご覧下さい!
おとう日記

コピペプログラマの倉庫を作りました。
サンプルプログラムなど置いておきますのでお立ち寄り下さい。
コピペプログラマ倉庫


良ければ↓投票お願いします↓ m(._.)m ペコッ
人気ブログランキングへ

0 件のコメント:

コメントを投稿