0
我在cocos2d-X项目,这两个类:为什么cocos2d-x计划更改了成员对象?
class A : public Layer
{
...
B * b;
void callAddNumber(float dt);
}
A::A()
{
b = B::create();
}
void A::callAddNumber(float dt)
{
b->addNumber();
}
class B : public Node
{
...
int number;
B();
void addNumber();
}
B::B()
{
number = 100;
}
void B::addNumber()
{
number += 1;
}
和一个对象调用shschedule(schedule_selector(A::callAddNumber), 1.0f);
但数量如我所料不加;看来在我预定之后,b对象变成了释放? b->号码变成了垃圾号码?为什么会发生? 我确定我在A的构造函数中初始化了b
。
你不显示,分配或以其他方式在'类A',初始化'B * B'的代码可能是发生问题的地方。目前还不清楚你如何从'B'类型访问数字;据推测,你有这样做的一些方法(因为你需要能够打印数字)。但是根据(未)显示的代码,问题很可能出现在'class A'的构造函数中。 –