luabind を使用して 1 つの引数を持つファンクターを lua にバインドする場合は、次のコードが役立ちます。
struct vec
{
int operator()(int a)
{
return a + 10;
}
};
module(L)
[
class_<vec>("vec")
.def( self(int()) )
];
ただし、ファンクターを複数の引数にバインドする方法は次のとおりです。たとえば、次のようになります。
struct vec
{
int operator()(int a, int b, int c)
{
return a + b + c;
}
}