0

それはおそらくトリックの質問ですが、よくわかりません。

後にdeleteを呼び出す必要がありますか:

  • QImage::copy()
  • QImage::load(QString)
  • QPixmap::fromImage(QImage)

削除とは、不要になったときに削除することです。

4

1 に答える 1

3

QImageオブジェクトは、作成および破棄の方法に特別なものではありません。スタック上、またはnew / deleteなどを使用する場合、ルールはすべてのC++オブジェクトの場合と同じです。

QImageは暗黙的に共有されるため、コピーは(共有ポインターのように)安価ですが、値のセマンティクスを保持するためにコピーオンライトを実行します。

簡単に言うと、QImageを新規/削除する必要はなく、値として渡すだけで心配する必要はありません。

コピー/ロードメソッドを呼び出した後、特別な削除を行う必要はありませんmy_image=QImage()、キャッシュされたデータなどを解放するために割り当てることができます。

于 2012-01-23T13:24:42.037 に答える