okulumda herhangi bir programlama dilinde proje yapma görevini aldık ancak özel veri yapısı ve programlama dili ile çöp toplayıcı olamaz. C++ kullanılması tavsiye edildi. Fakat objektif-c'de daha iyi becerilerim var. Bu yüzden Xcode projemde ARC'yi devre dışı bırakıyorum ve şimdi Java'da ArrayList gibi özel veri yapısı oluşturmalıyım. NSMutableArray veya NSArray kullanamıyorum. C++ gibi bellek ile çalışmak ve özel veri yapısı oluşturmak mümkün mü? Çöp toplayıcı olmadan proje osx
İki temel seçenek var
-1
A
cevap
1
yanıt için teşekkür ederiz:
- Kullanım
struct
'ın veri yapıları için vemalloc
/free
(ve arkadaşları) dinamik bellek tahsisi için - sadece öldürürsün olarak C (++) içinde; ya - Sen dinamik hafıza yönetimi için
NSObject
türetilmiş sınıfları vealloc
/init
/new
/retain
/release
(ve arkadaşları) kullanabilir. Bunu yapmak için ARC'yi devre dışı bırakmalısınız.
Bunun bir okul görevi olduğunu göz önünde bulundurduğunuzda, ikincisini kontrol etmek isteyebilirsiniz - işlemleri manuel olarak çağırıyor olsanız bile hala Objective-C referans sayım makinelerini kullanıyorsunuz demektir. Profesörünüz bunu kabul edemez.
İlk seçenek daha basittir, belleğin artık gerekli olmadığı tüm kararlardan tamamen siz sorumlusunuz. Gerçekten de kendi referans sayınızı veya hatta işaretlemelerinizi yapmayı seçebilirsiniz.
HTH
İlgili konular
- 1. alt dizinler ve Git çöp toplayıcı
- 2. Java anonim sınıfları ve Çöp Toplayıcı
- 3. Statik bir final Nesne, Çöp Toplayıcı tarafından silindi mi?
- 4. Web Çalışanlarını Kullanarak Olası Bellek Kaçakları (Çöp Toplayıcı)
- 5. Çöp toplayıcı, büyük yığın bölümü için 16384 bayt bellek ayıramadı
- 6. iPhone OS 3.0 gerçek bir çöp toplayıcı var mı?
- 7. Statik üyelerin çöp toplama
- 8. MongoDB toplayıcı seçmeli projesi
- 9. yeni Konu() ve Çöp Toplama
- 10. Java 8 için varsayılan çöp toplayıcısı
- 11. .Net Çöp Toplayıcı - Çalışma Zamanı sırasında Gen2'ye nelerin teşvik edildiğini görün
- 12. Tekerlek toplayıcı nasıl yapılır
- 13. Sonsuz yatay jQuery toplayıcı
- 14. Netty çöp üretimini nasıl azaltabilirim?
- 15. Java'da sınıflar çöp toplayıp ne zaman alınır?
- 16. OSX
- 17. OSX
- 18. OSX
- 19. OSX
- 20. OSX
- 21. OSX
- 22. Java'da birden çok çöp toplayıcısı
- 23. Bitbucket: Mac OSX
- 24. Buz yüzleri veri toplayıcı çalışmıyor
- 25. Çöp Toplama yerel değişkeni kaldırmadı
- 26. Çöp toplayıcının ne kadar zaman kullandığını?
- 27. Genç nesli ilk önce tam bir çöp koleksiyonunda toplar mısın?
- 28. JDK ile Deneyim 1.6.x G1 ("Çöp İlk")
- 29. Özürlü Çöp Toplama Bildirimleri
- 30. cURL çöp verileri döndürüyor
ARC bir çöp toplayıcısı değildir. Objective-C, 'struct' kullanabilir ve ayrıca istediğiniz özelliğe sahip, sadece" NSObject "olduğunu düşündüğüm" özel veri yapısı "nı yaratabilirsiniz? – Larme
@Larme ARC'nin çöp toplayıcı olmadığını biliyorum, ancak ARC'yi devre dışı bırakırsam nesneleri el ile silebilirim. Özel yapı 'struct' veya yeni 'NSObject' oluşturmak için daha iyi olan nedir? Java –
@ Larme'de ArrayList gibi aynı özellikleri istiyorum - referans sayma ** ** bir çöp toplama tekniği. Bakınız örneğin [Wikipedia] (https://en.wikipedia.org/wiki/Reference_counting), [bu kitap] (http://www.brpreiss.com/books/opus5/html/page421.html) ve hatta [bu Microsoft blogu] (https://blogs.msdn.microsoft.com/abhinaba/2009/01/27/back-to-basics-reference-counting-garbage-collection/) (Bu sadece ilk üç Google isabeti sırayla aldım). ARC, bir önceki işaret süpürme (bunun üzerinde% 100 emin değil) yerini alan bir referans çöp toplama aracıdır. – CRD