首先簡單說說什么是淺拷貝
和深拷貝
:淺拷貝就比如像引用類型,而深拷貝就比如值類型,即淺拷貝是共用一塊內存的,而深拷貝是復制一份內容。
我們再來看看QImage類的幾個構造函數:
1 // 淺拷貝 2 QImage(uchar * data, int width, int height, Format format) 3 // 淺拷貝 4 QImage(const uchar * data, int width, int height, Format format) 5 // 淺拷貝 6 QImage(uchar * data, int width, int height, int bytesPerLine, Format format) 7 // 淺拷貝 8 QImage(const uchar * data, int width, int height, int bytesPerLine, Format format) 9 // 深拷貝 10 QImage QImage::copy(const QRect & rectangle = QRect()) const 11 // 淺拷貝 12 QImage QImage::rgbSwapped() const