1

Qtで、次のようなQMapをネストした場合:

QMap<int, QMap<int, QMap<int, int*>* >* > 

qDeleteAllを1回呼び出すと、メモリが再帰的にクリーンアップされますか、それとも各コンテナーを反復処理してqDeleteAllを手動で複数回呼び出す必要がありますか?

4

1 に答える 1

1

通常のポインタを使用しているので、自分でメモリを再帰的にクリーンアップする必要があります。

メモリを自動的にクリーンアップする場合は、代わりにスマートポインタを使用してください。Qtにはさまざまなものがあります:Qtスマートポインター

QScopedPointerとQSharedPointerが最も興味を引くかもしれないものだと思います。

于 2013-01-17T00:16:04.043 に答える