functorの判りやすいソース
http://www.project-enigma.jp/members/kagelow/locus/archives/2006/02/fanctor.html
#include <stdio.h> class FooFunc { public: int operator( )( int arg1, int arg2 ) { return arg1 + arg2; }; }; void main() { FooFunc func; int ret = func( 5, 3 ); printf("ret=%d",ret); }
コンパイルできた。結果はret=8である
実際に生成しているアセンブラを見てみればinlineされているかわかるはず
でもこれはFunctorであって、templateは使ってない(のか?)