簡體   English   中英

刪除QMap值作為指針

[英]Delete QMap value as a pointer

我有一個QMap的鍵QString myClass 我瀏覽了Qt文檔,並決定將值定義為指向myClass對象的指針。 但是,我對如何同時remove鍵和(由運算符分配的指針對象)值的問題感到困惑? 如果我使用了remove()方法,就動態分配對象的內存釋放而言,這是否安全?

這是一個好選擇嗎?

myClass *type = types.take("foo");
delete type;

正如Qt文檔所說的關於QMap :: take()函數

從地圖上移除帶有鑰匙的物品,並返回與之關聯的值。

這樣您的代碼將從映射中刪除鍵,並刪除為myClass對象分配的內存。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM