QT 窗口关闭没有执行虚构函数
时间: 2023-07-19 12:03:07 浏览: 81
在 C++ 中,虚析构函数的作用是确保当对象被删除时,其子类的析构函数也会被调用。这是因为 C++ 中的多态性需要确保正确的析构函数被调用,否则可能会导致内存泄漏等问题。
如果你使用 Qt 编写的程序中,关闭窗口时虚析构函数没有被执行,那么可能是你没有在窗口的类中实现虚析构函数。你需要在窗口的类中添加一个虚析构函数,如下所示:
```c++
class MyWindow : public QMainWindow
{
Q_OBJECT
public:
virtual ~MyWindow() {}
// ...其他成员函数...
};
```
在这个例子中,我们添加了一个虚析构函数 `~MyWindow()`,确保当窗口对象被删除时,其子类的析构函数也会被调用。
阅读全文