我嘗試檢查的QPixmap被初始化時,當我嘗試使用來檢查:Qt的C++的QPixmap檢查其初始化
QPixmap pix;
if(pix.data_ptr())
or
if(pix != null)
其中PIX是的QPixmap類型的構件。
所有給我:
Access violation reading location 0x0000000c.
我怎樣才能檢查代碼是否PIX爲空?
我嘗試檢查的QPixmap被初始化時,當我嘗試使用來檢查:Qt的C++的QPixmap檢查其初始化
QPixmap pix;
if(pix.data_ptr())
or
if(pix != null)
其中PIX是的QPixmap類型的構件。
所有給我:
Access violation reading location 0x0000000c.
我怎樣才能檢查代碼是否PIX爲空?
當非指針的QPixmap可能未初始化的唯一情況是:
QPixmap getPixmap()
{
// no return statement here
}
QPixmap pix = getPixmap();
// now pix is invalid but .isNull() will return false
我有類似的問題與未初始化的QStrings。
使用isNull()
功能,當執行這樣的代碼
if(!item->pix.isNull())
什麼數據類型是'item'? – SingerOfTheFall 2013-02-27 13:21:17
一般來說,在它的構造函數中我設置了虛擬QPixmap對象 我的問題是如何檢查QPixmap是否初始化 – user63898 2013-02-27 13:23:14
我認爲您需要提供一個更清晰的描述。 @cartman告訴你如何檢查一個QPixmap是否被初始化,但這似乎並不是你的問題。如果您提供的少量代碼導致崩潰,這是因爲項目未初始化。 – 2013-02-27 13:39:40