我对C++有点新,到目前为止一直在用Obj-C和Java编程.
说,我有一节课:
class Person {
private:
Wife *current_wife;
//.....
};
Run Code Online (Sandbox Code Playgroud)
所以我需要实现一个setter方法来改变Wife实例变量.
像这样:
Person::SetCurrentWife (Wife *new_wife) {
current_wife = new_wife;
}
Run Code Online (Sandbox Code Playgroud)
这将是一个副本.
所以从主循环或我调用的东西:
Person *some_person = new Person();
...
Wife *wife = new Wife ();
some_person->SetCurrentWife(wife);
Run Code Online (Sandbox Code Playgroud)
所以我很困惑:这里会有内存泄漏吗?我应该在这里或在Person的析构函数中删除妻子对象吗?在Obj-C中,我会释放当前的妻子,然后向上面的妻子对象发送一条保留消息,但在C++中使用setter方法的正确方法是什么?
使用NSUserDefaults来保存游戏状态/设置而不是在普通C中创建二进制文件有什么好处吗?
专门针对iOS游戏.