我有一个函数可以接收对QPixmap的引用作为参数,如下所示:

void myFunction(QPixmap &pixmap){
    //[...]
}

如何将像素图设置为“null”,以便在对已加载内容的像素图调用pixmap.isNull()后,true返回myFunction()

例:
//1. Create pixmap
QPixmap pixmap;
qDebug() << pixmap.isNull(); //true

//2. load image
pixmap.load("existing_image.png");
qDebug() << pixmap.isNull(); //false

//3. run myFunction on pixmap
myFunction(pixmap);
qDebug() << pixmap.isNull(); //true

最佳答案

一种方法是使用swap()方法用空QPixmap替换图像数据:

void myFunction(QPixmap &pixmap){
    pixmap.swap(QPixmap());
}
swap()的文档(如上所述):

10-08 04:11