2009年5月13日星期三

QObject的删除

GGL的用户报了几个Bug,其中有一个相当的严重,Debian sid里的ggl-qt在没有网络连接的情况下会Crash,屡试不爽(看来偶在开发的时候从来没断过网,汗)

终于有时间研究这个Bug,发现原来是删除QHttp的方式不对,文档曰,QObject(注:QHttp的基类)的删除在某些情况下(具体去看the F**K Document)不能用delete,而要用QObject::deleteLater。修改之后,Bug即被Fix。再查看剩下的Bug,有几个是竟然这个Bug的马甲,爽,kde那边有几个Bug也是马甲,更爽。

进而暴汗,自从开发GGL以来觉得对Qt有一定了解了,竟不知QObject::deleteLater。

特著文以记之!

没有评论: