C++相談室 part47
■ このスレッドは過去ログ倉庫に格納されています
0408デフォルトの名無しさん
2006/02/26(日) 20:39:16#include <functional>
#include <boost/function.hpp>
struct SomeObject{
void Do(int) { std::cout << "hogehoge" << std::endl; }
};
int main(){
SomeObject t;
boost::function<void (int)> g = std::bind1st( std::mem_fun(&SomeObject::Do), &t );
g(0);
return 0;
}
だとコンパイル通って、
struct SomeObject{
void Do(void/* ここと */) { std::cout << "hogehoge" << std::endl; }
};
int main(){
SomeObject t;
boost::function<void (void/* ここと */)> g = std::bind1st( std::mem_fun(&SomeObject::Do), &t );
g();/* ここを変更 */
return 0;
}
だと通らなくなるんだけど…理由わかる人がいたら教えてもらえませんか?
環境はVC2005Express + boost 1.33.1です。
■ このスレッドは過去ログ倉庫に格納されています