果断的甜瓜 · 机器学习 | 飞哥的技术博客· 3 月前 · |
绅士的凉面 · Аксесуари в ...· 4 月前 · |
豁达的针织衫 · 设计表时,如何选择正确的数据类型 - ...· 5 月前 · |
纯真的鼠标垫 · 条件が true ...· 6 月前 · |
英姿勃勃的羽毛球 · 车艺尚广州旗舰店|龙膜官网授权店|龙膜官方授 ...· 10 月前 · |
析构函数 模态对话框 |
https://cloud.tencent.com/developer/information/%E5%A6%82%E4%BD%95%E5%9C%A8Qt%E7%AA%97%E5%8F%A3%E5%85%B3%E9%97%AD%E6%97%B6%E9%87%8A%E6%94%BE%E5%86%85%E5%AD%98%EF%BC%9F |
痴情的人字拖
2 月前 |
在Qt窗口关闭时释放内存,可以通过以下几个步骤来实现:
以下是一个简单的示例代码:
class MyWindow : public QWidget {
Q_OBJECT
public:
MyWindow() {
// 构造函数中初始化窗口和资源
private slots:
void releaseMemory() {
// 释放窗口中使用的资源
myImage.reset();
myPixmap.reset();
myByteArray.reset();
// 删除自定义的QObject对象
delete myObject;
// 最后删除窗口对象
this->deleteLater();
private:
QImage myImage;
QPixmap myPixmap;
QByteArray myByteArray;
QObject* myObject;
int main(int argc, char* argv[]) {
QApplication app(argc, argv);
MyWindow* window = new MyWindow();
// 连接窗口关闭信号到槽函数
QObject::connect(window, &QWidget::destroyed, window, &MyWindow::releaseMemory);
window->show();
return app.exec();
}
在这个示例中,我们创建了一个MyWindow类,在槽函数releaseMemory()中释放了窗口中使用的资源,并删除了自定义的QObject对象和窗口对象。在主函数中,我们连接了窗口的destroyed信号到槽函数releaseMemory,以便在窗口关闭时自动释放内存。
果断的甜瓜 · 机器学习 | 飞哥的技术博客 3 月前 |