这可能是个棘手的问题,但我不确定;
我是否必须在 : 之后调用 delete
QImage::copy()
QImage::load(QString)
QPixmap::fromImage(QImage)
我的意思是删除,当我不再需要它时删除它。
最佳答案
QImage 对象的创建和销毁方式并不特殊。在堆栈上或使用 new/delete 或其他任何东西,规则与所有 C++ 对象相同。
QImage 是implicitly shared ,所以复制它很便宜(就像共享指针),但它执行写时复制以保留值语义。
简而言之,您可能永远不必新建/删除 QImage,只需将其作为值传递即可,无需担心。
您不必在调用复制/加载方法后执行任何特殊删除操作,尽管您可能希望分配 my_image=QImage()
以释放缓存数据或一些东西。
关于c++ - 复制/加载后是否删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8972272/