奇怪的问题我有一个使用多个类的程序,其中一些类用于定义其他类中的对象,但我无法修改它们的值,不确定这是否有意义,但我会尝试演示
C++ 文件
class A{
public:
A(){
c = 0
}
int c;
};
class B{
public:
A d;
};
luabridge::getNamespace(L)
.addNamespace("test")
.addClass<A>("A")
.addConstructor<void(*) ()>()
.addData("c", &A::c)
.endClass()
.addClass<B>("B")
.addConstructor<void(*) ()>()
.addData("d", &A::d)
.endClass()
.endNamespace();
现在在我们拥有的 lua 文件中
var = test.B()
var.d.c = 2
print(var.d.c)
程序打印
0
只是为了澄清如果 A 的构造函数将 c 设置为 666,那么程序输出 666