プログラミング言語 L ..
129:デフォルトの名無しさん
07/02/22 12:27:46
luabindはboostまわりで環境(バージョン)依存するし、tolua++使ってるわ。
>>118で何を実現したかったのか見えなかったんだけど、
setfenvとかはあくまでグローバルテーブルが取れるだけだし、
localとupvalueが取れないのは仕様上しょうがない・・・。
debugライブラリ使ってもいいけど、安全上の問題が・・・とかマニュアルに書いてある。
んで、今luaのソースちょっと見てみたら、
ローカル変数は数値インデックスで管理されてて、テーブルになってない。
バイトコード上ではほぼ名前は省かれてて、「このインデックスのローカルにこのインデックスのローカルを代入」みたいな
処理になってると思われる。
グローバル変数をlocalに代入してから処理したほうが高速、といわれるのはこういう理由なのね。
グローバル汚す可能性についてはグローバルのメタテーブルの__newindexをいじくって
制限をつければいいと思う。
次ページ続きを表示1を表示最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
5059日前に更新/210 KB
担当:undef