C++ 使用lua_error和LuaJIT跳过堆栈对象析构函数?
我用MSVC x64编译了LujIT,这意味着应该有完全的C++异常互操作性。C++ 使用lua_error和LuaJIT跳过堆栈对象析构函数?,c++,memory-leaks,lua,destructor,luajit,C++,Memory Leaks,Lua,Destructor,Luajit,我用MSVC x64编译了LujIT,这意味着应该有完全的C++异常互操作性。 一个观点指出,“在C++框架上抛出LUA错误是安全的。将调用C++析构函数。” 我假设这意味着我可以在C++函数中使用LuaAube错误,而不用担心堆栈上的对象: struct Test { Test() {std::cout<<"Constructor"<<std::endl;} ~Test() {std::cout<<"Destructor"<<st
一个观点指出,“在C++框架上抛出LUA错误是安全的。将调用C++析构函数。”
我假设这意味着我可以在C++函数中使用LuaAube错误,而不用担心堆栈上的对象:
struct Test
{
Test() {std::cout<<"Constructor"<<std::endl;}
~Test() {std::cout<<"Destructor"<<std::endl;}
};
int some_function(lua_State *l)
{
Test t {};
lua_pushstring(l,"error message");
lua_error(l);
return 0;
}
struct测试
{
Test()。