【发布时间】:2014-08-15 00:57:05
【问题描述】:
我有一个名为 Mesh 的类,它包含 OpenGL 对象、VBO、纹理等。该类继承自 QObject,其父级设置为我的 QGLWidget。因此,一旦我关闭小部件,它就会被 QObject 系统删除。
但是我有一个问题,因为这个网格类有一个析构函数,它执行一些 OpenGL 调用来清理。当 QObject 子析构函数启动时,OpenGL 上下文已经被破坏,我得到一个段错误。
如何确保在删除 QGLWidget 上下文之前调用我的 ~Mesh() 析构函数?
【问题讨论】:
-
我建议检查 QOpenGLContext 并自己管理它。
标签: c++ qt opengl qobject qglwidget