你更喜欢哪一种删除对象?特别是在 QT 中,但也欢迎其他实践。这两种选择对我来说似乎是一样的,是吗?
绑定(bind)到另一个类,销毁时销毁。
SomeClass::SomeClass{ socket_ = new QTcpSocket(this); }
或
在类的析构函数中销毁
SomeClass::SomeClass{ socket_ = new QTcpSocket(); } SomeClass::~SomeClass{ delete socket_; }
最佳答案
身在罗马,入乡随俗。如果您的框架使用一种方法(例如 Qt 依赖父子关系),请在您的代码中使用该方法。
当然不要忘记一般良好的内存管理实践:尽可能在堆栈上创建对象、使用共享指针等。
关于c++ - 对象删除 : use parent or not,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2764806/