2008年12月4日の日記

<2008/12/05 2008/12/03>

無題

ふにゃさんやってたら作ってないはずの設定メニューがゲーム本体に出てきたのを発見したので直しておきました。

Luaの関数として呼び出されたC関数の中でC++のクラスを使った場合どうなるのかが気になって少し実験していました。
何が気になっていたのかというと、関数内でエラーが起こった場合、C++の例外ではなくてC言語のlongjmp(gotoの強化版のようなもの)で関数を抜けるのですが、そのときクラスのデストラクタまですっ飛ばしてエラー処理まで処理が飛ぶのではないかと思ったのです。
実際試してみたところ、longjmpでもちゃんとデストラクタは呼ばれるようなので、この点では安心してよさそうです。

<2008/12/05 2008/12/03>