84669 人學習
152542 人學習
20005 人學習
5487 人學習
7821 人學習
359900 人學習
3350 人學習
180660 人學習
48569 人學習
18603 人學習
40936 人學習
1549 人學習
1183 人學習
32909 人學習
开启了ARC的objective-C++代码中C++对象是否需要手动释放?
学习是最好的投资!
需要。 ARC 只是一個編譯器技術,透過掃描程式碼自動插入 retain/release,C++ 程式碼並不在編譯器辨識的範圍內,生命週期只有自己管理。
另外,ARC 這種技術是因為Obj-C 語言本身無法實現自動引用計數才不得已而為之的「落後」技術,C++ 的話直接使用shared_ptr/unique_ptr/weak_ptr 這些標準函式庫提供的智慧指標類別就能夠寫出跟ARC 一樣乾淨的程式碼。某種意義上來說,用了智慧指針,C++ 的物件就不需要手動釋放了。
需要。 ARC 只是一個編譯器技術,透過掃描程式碼自動插入 retain/release,C++ 程式碼並不在編譯器辨識的範圍內,生命週期只有自己管理。
另外,ARC 這種技術是因為Obj-C 語言本身無法實現自動引用計數才不得已而為之的「落後」技術,C++ 的話直接使用shared_ptr/unique_ptr/weak_ptr 這些標準函式庫提供的智慧指標類別就能夠寫出跟ARC 一樣乾淨的程式碼。某種意義上來說,用了智慧指針,C++ 的物件就不需要手動釋放了。