gpt4 book ai didi

c++ - LuaBridge 没有正确创建构造函数

转载 作者:太空狗 更新时间:2023-10-29 23:46:18 25 4
gpt4 key购买 nike

我使用 LuaBridge 将一些类和函数移植到 Lua。我目前正在调试,我总是得到

main.lua:1: attempt to call method 'new' (a nil value)

这是 main.lua :

v = TexVector:new( 1, 2 )
v.X = 0
v.Y = 0
print( v.X, v.Y ) -- print and explicit binded functions work

这是 TexVector 的初始化代码:

luabridge::getGlobalNamespace( L ).
beginClass< Cheap::Math::TexVector >( "TexVector" ).
addConstructor< void (*) ( ) >( ).
addConstructor< void (*) ( const double& , const double& ) >( ).
addData( "X", &Cheap::Math::TexVector::X ).
addData( "Y", &Cheap::Math::TexVector::Y ).
addFunction( "Add", &Cheap::Math::TexVector::Add ).
addFunction( "Sub", &Cheap::Math::TexVector::Sub ).
addFunction( "Mul", &Cheap::Math::TexVector::Mul ).
addFunction( "Div", &Cheap::Math::TexVector::Div ).
addFunction( "Eq", &Cheap::Math::TexVector::Eq ).
addFunction( "Apply", &Cheap::Math::TexVector::Apply ).
endClass( );

AFAIK 是 :new Lua-“类”的构造函数。初始化或 Lua 脚本有问题吗?

最佳答案

LuaBridge 只支持一个构造函数。这不会阻止您拥有多个命名的静态构造函数,例如 :new,正如 Nicol Bolas 所建议的那样。

关于c++ - LuaBridge 没有正确创建构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12234388/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com