Ich möchte eine Frage über das Ziel C stellen. Wenn ich die Bibliothek von der Apple Developer Website studiere. Ich sehe immer, dass es eine Unterklasse namens "veränderbar" gibt. Zum Beispiel NSArray und NSMutableArray. Was bedeutet das für dieses Wort? Gibt es eine besondere Bedeutung? Kann mir das jemand sagen? Vielen Dank.Was bedeutet "veränderbar" in Ziel C?
Antwort
Es bedeutet, dass Sie seine Werte ändern können. Wenn Sie sich die NSMutableArray-Dokumente ansehen, sehen Sie, dass sie zusätzliche Methoden wie -addObject:
definiert. NSArray selbst hat diese nicht (und kann daher effizienter sein/weniger Speicher bei der Implementierung benötigen).
Beachten Sie auch, wenn Sie anrufen [myMutableArray copy]
es eine nicht-veränderbare Kopie davon erhalten (die Sie später release0 müssen. Und ähnlich ist es -mutableCopy
.
Mutable bedeutet, dass Sie es ändern können. Schauen Sie sich die Differenz zwischen addObject in NSMutableArray und arrayByAddingObject in NSArray
Vom Objective-C Beginner's Guide es die Antwort auf Ihre Frage lautet:.
es gibt zwei Arten von Arrays (und von normalerweise am meisten Daten orientierte Foundation Klassen) NSArray und NSMutableArray. Wie der Name schon sagt, Veränderbar ist veränderbar, NSArray ist dann nicht. Diese bedeutet, dass Sie eine NSArray machen können, aber einmal Sie haben, können Sie die Länge nicht ändern.
Diese Tech-Note bedeutet auch, können Sie Änderung die Länge eines änderbaren Array nach dem Array erstellt wurde.
Im Allgemeinen mutability stems from these meanings. Dies wird Ihnen helfen, ein breiteres Verständnis dafür zu entwickeln, wenn Sie es anderswo finden.
- 1. Was bedeutet dieser Codeblock [=, & i]() veränderbar {}()?
- 2. Was bedeutet [&] bedeutet in C++
- 3. Was bedeutet ".. ::." in C#?
- 4. Was bedeutet :: * in C++?
- 5. Was bedeutet/*! */In C#?
- 6. Was bedeutet/** in C++
- 7. Was bedeutet "==" in C?
- 8. Was bedeutet "[das]" in C++ bedeutet
- 9. Was bedeutet ?? Operator bedeutet in C#?
- 10. Was bedeutet das Ziel ".cpp.o:" in einem Makefile?
- 11. Was bedeutet Operation "| =" in C++?
- 12. Was bedeutet: :: in C++ bedeuten?
- 13. Was bedeutet "= 0" in C++?
- 14. Was bedeutet (void **) in C?
- 15. Was bedeutet 0u in C#?
- 16. Was bedeutet -> in C++?
- 17. Was bedeutet Far in c?
- 18. Was bedeutet "[*]" (Sternmodifikator) in C?
- 19. Was bedeutet "() =>" in C#?
- 20. Was bedeutet "?" in C++ machen?
- 21. Was bedeutet Nullfunktionszeiger in C?
- 22. Was bedeutet "Var" in C#?
- 23. Was bedeutet "Klasse:" in C++?
- 24. Was bedeutet @ in Objective-C?
- 25. Was bedeutet "Dateiende" in C?
- 26. Was bedeutet() => in C#?
- 27. Was bedeutet String * in C#?
- 28. Was bedeutet das & Symbol in Objective-C?
- 29. Was bedeutet isa in objective-c?
- 30. C# - Was bedeutet "\ 0"?