luabind
組込用途のスクリプト言語 Lua と C++ の間で、関数相互呼び出しを実現するためのライブラリ。
ドキュメントから抜粋。
上記の C++ クラスを Lua から呼び出すため lua_State* L に登録するコード。
ソース眺めてみたら Boost MPL を使って、バリバリのテンプレートメタプログラミングになってる。やるなぁ。ちょっとまじめに読んでみるか。
ドキュメントから抜粋。
class testclass
{
public:
testclass(const std::string& s): m_string(s) {}
void print_string() { std::cout << m_string << "\n"; }
private:
std::string m_string;
};
上記の C++ クラスを Lua から呼び出すため lua_State* L に登録するコード。
using namespace luabind;
module(L)
[
class_<testclass>("testclass")
.def(constructor<const std::string&>())
.def("print_string", &testclass::print_string)
];
ソース眺めてみたら Boost MPL を使って、バリバリのテンプレートメタプログラミングになってる。やるなぁ。ちょっとまじめに読んでみるか。
ラベル: プログラミング

0 件のコメント:
コメントを投稿
この投稿へのリンク:
リンクを作成
<< ホーム