【发布时间】:2017-02-08 19:58:56
【问题描述】:
foo 函数完成后,myClass 指针会发生什么情况?会自动删除吗?
bar 函数完成后,myThread 指针会发生什么情况? (假设myThread指向一个QThread对象)
void foo()
{
MyClass *myClass = new MyClass();
myClass->doSomething();
}
void bar()
{
// Suppose that MyThread is a QThread class
MyThread* myThread = new MyThread(2.5);
// Connect the Thread to get the result
connect(myThread, SIGNAL(sendResult(double)), this, SLOT(getResult(double)));
// Start the thread
myThread->start();
}
提前致谢
【问题讨论】:
-
当你用
new实例化一个对象时,它会一直存在直到delete被调用。由于您使用的是原始指针,因此它们将一直存在,直到您自己调用delete或将它们传递给包含对delete的调用的消费函数。