Ich habe gerade ein Xcode-Projekt heruntergeladen, und ich bekomme alle diese Fehler über "ARC Restrictions." Was sind diese und wie kann ich sie entfernen?Was sind ARC-Einschränkungen und wie kann ich sie entfernen?
Antwort
Es gibt grundsätzlich zwei Versionen der Speicherverwaltung in objective-c. ARC und ... naja, "Not ARC" :-) Du hast wahrscheinlich ein Projekt heruntergeladen, das ARC noch nicht benutzt. Der einfachste Weg, Ihr Problem zu lösen, besteht darin, den Compiler anzuweisen, Ihre Quellen als "Nicht-ARC" zu behandeln. Explained here.
Und here ist ein gutes Tutorial, das Sie mit ARC beginnen sollte.
ARC überwacht automatisch die Speicherfreigabe und behält sie bei, so dass Sie keinen Speicher manuell freigeben und behalten können.
ARC erlaubt auch keine Methode, die zur Kompilierzeit aufgerufen wird, welcher Prototyp in Schnittstellen nicht deklariert wird.
Es hat auch neue @autoreleasepool Block eingeführt. so dass es nicht erlaubt ältere Autorelease eines Objekts automatisch
Allerdings hat es erlaubt Dealloc-Methode geschrieben werden, aber es nicht erlaubt [Super Dealloc] abgerufen werden.
Es gibt viel mehr Beratung über ARC in diesem blog Sie es hier checkt kann
Sie Ihr Projekt Xcode in folgender Weise ARC verdeckte kann mit. Gehen Sie zu Bearbeiten -> Refaktor -> In objektiver c Bogen umwandeln.
Es hat jedoch einige Kompatibilitätsprobleme mit dem Git-Repository, so dass es nicht konvertiert wird, wenn .git-Ordner in Projekten vorhanden sind. Sie müssen es also zuerst entfernen und dann konvertieren. Überprüfen Sie diese link
- 1. Was sind VSSVER.SCC-Dateien, und kann ich sie löschen?
- 2. Was sind TestExecutionListeners und was machen sie?
- 3. NSComparisonResult und NSComparator - was sind sie?
- 4. Rekursion: Wie kann ich entfernen
- 5. Was sind SQLite Entwicklungs-Header und wie man sie installiert?
- 6. Was sind "Dekorateure" und wie werden sie verwendet?
- 7. Was sind C# Iteratoren und Generatoren, und wie könnte ich sie verwenden?
- 8. Wie kann ich redundanten Code in Perl identifizieren und entfernen?
- 9. Was sind "cerr" und "stderr"?
- 10. Was sind Bytecodes und wie behandelt die JVM sie?
- 11. Was sind Mergemodule und wie werden sie verwendet?
- 12. Was sind kanonische URLs und wie beeinflussen sie Ihre SEO?
- 13. Muss ich Ereignissubskriptionen von Objekten entfernen, bevor sie verwaist sind?
- 14. Entfernen Sie alle Array-Elemente außer was ich will?
- 15. Was sind DailyTrigger und ScheduledTasks?
- 16. Was sind class_setIvarLayout und class_getIvarLayout?
- 17. PHP - Was sind das und wie echo ich bestimmte Werte?
- 18. Was sind '!' und '?' in Swift
- 19. Wie kann ich Container losgelöst ausführen lassen und sie beim Verlassen automatisch entfernen lassen?
- 20. Signatur- und Exchange-Schlüsseltypen - was sind sie und wann sie zu verwenden sind (Makecert -sky)?
- 21. Was sind "Vokabeltypen" und wie viele existieren?
- 22. Was sind SO_SNDBUF und SO_RECVBUF
- 23. Wie kann ich das Attribut "readonly" hinzufügen und entfernen?
- 24. Zu viele offene Dateien: wie viele offen sind, was sie sind, und wie viele kann die JVM offen
- 25. Was sind Serialisierung und Parcel
- 26. Wie kann ich Ergebnisse gruppieren und Duplikate entfernen
- 27. Ruby: Wie kann ich leere Verzeichnisse rekursiv finden und entfernen?
- 28. Wie kann ich "{{" und "}} Trennzeichen in Go-Vorlagen entfernen?
- 29. Wie kann ich "{{" und "}} Trennzeichen in Go-Vorlagen entfernen?
- 30. Was sind paddingStart und paddingEnd?
könnten Sie ein Beispiel für diese Einschränkungen teilen? – Pochi
haben Sie versucht, den Text zu lesen, der unter 'ARC Restrictions' steht? –