【初心者歓迎】C/C++室 Ver.34【環境依存OK】
■ このスレッドは過去ログ倉庫に格納されています
0450デフォルトの名無しさん
2007/02/03(土) 06:54:43test.cc と言うファイル、
#include <stdio.h>
class C{
public:
int a(){
return 1;
}
int(*get_f())(){
return a;
}
};
int main(){
int (* f)();
C c;
f = c.get_f();
printf("%d\n", (*f)());
return 0;
}
を、
gcc test.cc
でコンパイルすると、
test.cc: In member function `int (* C::get_f())()':
test.cc:9: error: argument of type `int (C::)()' does not match `int (*)()'
のエラーが出ます。
クラス関数のポインタを取得したいのですが、
どう記述すれば良いでしょうか?
gcc は、3.3.5 です。
■ このスレッドは過去ログ倉庫に格納されています