apple - objective-c从哪个版本开始就不用手动管理内存了?
PHP中文网
PHP中文网 2017-04-21 11:18:14
0
4
578

下载了xcode5,写代码时对一个变量比如NSString *str = [[NSString alloc] init]类似这样的写法,都不用手动释放内存了么?([str release])。这个特性是从xcode哪个版本开始的?
还有,那这样是不是意味着xcode5就是像java那样的自动管理内存了呢?

PHP中文网
PHP中文网

认证高级PHP讲师

membalas semua(4)
左手右手慢动作

2.0
2.0 menambah GC

伊谢尔伦

Adakah anda sebenarnya sedang mencari artikel di sini? "Kisah Di Sebalik Rangkaian Alat Kompilasi Mac OS X (8) LLVM oleh Tiga Pelajar Baik Chris Lattner"

阿神

Daripada iOS 5. Xcode 4.2.

阿神

Setakat ini pembangun Objective-C boleh mempunyai beberapa kaedah mengurus memori, yang paling biasa ialah [object dealloc].

MRC: Setiap kali [object retain] dirujuk, kiraan rujukan akan menjadi +1 dan [object release] akan digunakan untuk mengelakkan pelepasan tidak sengaja dan penunjuk liar.

GC: Ini hanya disokong oleh Cocoa. NSGarbageCollector boleh melaksanakan pengumpulan sampah automatik yang serupa dengan Java Kelemahannya ialah ia menjejaskan prestasi, jadi Cocoa Touch tidak menyediakan fungsi ini.

ARC: Ini ialah ciri baharu (sebenarnya bukan pengkompil lalai baharu Xcode, Apple LLVM, menggantikan LLVM-GCC sebelumnya dan menggunakan Clang sebagai bahagian hadapan Ia akan dianalisis sebelum ini kompilasi, dan penganalisis akan melengkapkannya di mana pengekalan dan pelepasan perlu ditambah. ARC boleh menjaga sejumlah besar operasi pengiraan rujukan manual dan mengelakkan banyak kesilapan. Selepas menggunakan ARC, adalah dilarang untuk menggunakan kaedah mengekalkan dan melepaskan secara manual Anda boleh membebankan dealloc tetapi hanya melaksanakan keluaran tersuai.

Saya telah meneliti perkara ini baru-baru ini. Sila betulkan saya jika terdapat sebarang kesilapan

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!