在控制窗口,我有這個功能我的主類,其中pixmapItem
是在類的頭文件中定義的QGraphicsPixmapItem*
:QImage:如何正確銷燬指向像素數據的指針?
void updateDisplay() {
uchar *data = new ...; // array of pixel data
...
QImage image = QImage(data, width, height,
width, QImage::Format_Indexed8);
pixmapItem->setPixmap(QPixmap::fromImage(image));
}
我的問題是:我怎麼能滅data
時不再需要它? 「不再需要」意味着上面的函數或我的類中的另一個函數將像素映射設置爲另一個圖像。
我已經看到有QImage的清理功能,可以幫助,但文檔內容不是關於如何使用它們,如何傳遞參數,如圖像的數據指針刪除真正明確。
注意,通常情況下,如果可能的話,這是一個好主意,讓'QImage'本身分配爲像素內存 - 這樣你就可以確保它的大小和對齊正確,並且它由QImage實例擁有/自動銷燬;在構建QImage之後,可以使用「bits」方法獲得指向像素數據的指針。 –