【Lua】組み込み系言語総合 その2【Squirrel】
■ このスレッドは過去ログ倉庫に格納されています
0841デフォルトの名無しさん
2010/02/07(日) 18:22:00userdataでやれば上手くいくんだけどlightuserdataのほうが軽いらしいし・・・
C++側で
tableを作る
tableにインスタンスへのポインタをlightuserdataで格納
tableに各種メソッドを格納(メソッドはself(第一引数)tableからインスタンスへのポインタを取り出してクラスのメソッドをコールする)
さらにtableを積んで__gcフィールドにデリータを格納
最初のテーブルにメタテーブルとして設定
最初のテーブルを返す
という感じでやってるんだけどLua側で__gcが呼ばれてくれない
mt = getmetatable、mt.__gc(hoge)とすればちゃんとデリータを呼んでくれるのに・・・
こっちがDLL
http://codepad.org/5CuryxGE
こっちがLua
http://codepad.org/BON62sBh
■ このスレッドは過去ログ倉庫に格納されています