84669 Lernen von Personen
152542 Lernen von Personen
20005 Lernen von Personen
5487 Lernen von Personen
7821 Lernen von Personen
359900 Lernen von Personen
3350 Lernen von Personen
180660 Lernen von Personen
48569 Lernen von Personen
18603 Lernen von Personen
40936 Lernen von Personen
1549 Lernen von Personen
1183 Lernen von Personen
32909 Lernen von Personen
开启了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++ 的对象就不需要手动释放了。