问题描述
我正在编写一个需要频繁调用以下槽函数的程序。这个功能一开始运行正常,但是过了一段时间,出现了segmentation fault。 img
传递正确,问题发生在 fromImage
函数中。我该如何解决这个问题?
void StitchWindow::showStitchImg(QImage img)
{
img_label->resize(img.width(),img.height());
Qpixmap img_pix = Qpixmap::fromImage(img);
img_label->setpixmap(img_pix)
}
解决方法
QImage 使用隐式数据共享。您需要通过调用分离您的数据
img.bits()
void StitchWindow::showStitchImg(QImage img)
{
img.bits();
img_label->resize(img.width(),img.height());
QPixmap img_pix = QPixmap::fromImage(img);
img_label->setPixmap(img_pix)
}