私は現在、Qt、OpenCv、Mac OS Xでプログラムを作成しています。私はメインウィンドウと別のウィンドウを開いています。私は、コンストラクタで新しいウィンドウいくつかの行列のクローンを渡します。新しいウィンドウが閉じられたときに、私は、(私はcvReleaseMat呼ぶのですかどこ)割当てを解除するにはどうすればよいQtウィンドウが閉じたときにメモリの割り当てを解除するには?
ImageWindow *imageWin = new ImageWindow(
cvCloneMat(getData->getMasterRawMat(1)),
cvCloneMat(getData->getMasterRawMat(2)),
cvCloneMat(getData->getMasterRawMat(3)),
cvCloneMat(getData->getMasterRawMat(4)));
imageWin->show();
?
コメント: 'ImageWindow * imageWin'を正しく親にしてください。メモリ管理のためにQTで重要な役割を果たす適切な子育て:) – bgs
'Qt :: WA_DeleteOnClose'フラグを' QWidget'に追加すると、閉じるボタンを押して閉じると、関連付けられたメモリが割り当て解除されますか? 'QTableWidget * w = new QTableWidget();'のように初期化しています。 – SexyBeast