Tôi muốn đặt câu hỏi về mục tiêu C. Khi tôi nghiên cứu thư viện từ trang web của nhà phát triển Apple. Tôi luôn thấy rằng có một số phân lớp được gọi là "có thể thay đổi". Ví dụ, NSArray và NSMutableArray. Ý nghĩa của từ này là gì. Có một số ý nghĩa đặc biệt? Bất cứ ai có thể cho tôi biết? Cảm ơn bạn.Ý nghĩa của "biến đổi" trong mục tiêu C là gì?
Trả lời
Điều đó có nghĩa là bạn có thể thay đổi giá trị của nó. Nếu bạn nhìn vào tài liệu NSMutableArray, bạn sẽ thấy nó định nghĩa các phương thức bổ sung như -addObject:
. NSArray tự nó không có (và do đó có thể hiệu quả hơn/mất ít bộ nhớ hơn khi triển khai).
Cũng lưu ý, nếu bạn gọi [myMutableArray copy]
bạn sẽ nhận được một bản sao không thể thay đổi của nó (mà bạn sau này phải release0. Và tương tự có -mutableCopy
.
Mutable có nghĩa là bạn có thể thay đổi nó. Nhìn vào sự khác biệt giữa AddObject trong NSMutableArray và arrayByAddingObject trong NSArray
Từ Objective-C Beginner's Guide nó khẳng định câu trả lời cho câu hỏi cụ thể của bạn.
có hai loại mảng (và của thường là hầu hết các lớp dữ liệu theo định hướng Foundation ) NSArray và NSMutableArray. Như tên cho thấy, Có thể ẩn là có thể thay đổi, NSArray thì không. Điều này có nghĩa là bạn có thể thực hiện một NSArray nhưng một lần bạn có bạn không thể thay đổi độ dài.
lưu ý công nghệ này cũng có nghĩa bạn có thể thay đổi chiều dài của một mảng có thể thay đổi sau khi mảng đã được tạo.
Nói chung mutability stems from these meanings. Điều này sẽ giúp cung cấp một sự hiểu biết rộng hơn cho khi bạn gặp nó ở nơi khác.
- 1. Nghĩa là gì trong mục tiêu-c?
- 2. Ý nghĩa của '==' trong C là gì?
- 3. Biểu tượng & ý nghĩa có ý nghĩa gì trong Mục tiêu-C?
- 4. Asterisk * có nghĩa là gì trong Mục tiêu-C?
- 5. Ý nghĩa của `_t` của` size_t` trong C là gì?
- 6. Ý nghĩa của thư mục ProgramData trong Windows là gì?
- 7. [tự tự] có nghĩa là gì trong mục tiêu c?
- 8. Ý nghĩa của ∃ là gì?
- 9. Ý nghĩa của NULL! = Giá trị trong C++ là gì?
- 10. Ý nghĩa của phương thức Thread.Join trong C# là gì?
- 11. Ý nghĩa của id là gì?
- 12. Ý nghĩa của + trong CSS là gì?
- 13. Ý nghĩa của @_ trong Perl là gì?
- 14. Ý nghĩa của $$ trong Ruby là gì?
- 15. Ý nghĩa của /// trong JavaScript là gì?
- 16. Thuộc tính mục tiêu-C - "id" nghĩa là gì?
- 17. Ý nghĩa của -532459699 là gì?
- 18. Ý nghĩa của những biến động này với con trỏ trong C là gì?
- 19. Ý nghĩa của tệp dylib là gì?
- 20. Ý nghĩa của chỉ thị {$ C PRELOAD} là gì?
- 21. Từ khóa "và" có ý nghĩa gì trong Mục tiêu-C?
- 22. ý nghĩa của "tóm lại" là gì
- 23. Ý nghĩa của "UseTaskFriendlySynchronizationContext" là gì?
- 24. Ý nghĩa của Giao dịch là gì?
- 25. Android - ý nghĩa của StableID là gì?
- 26. Ý nghĩa của typedef này là gì?
- 27. Dấu đô la có ý nghĩa gì trong mục tiêu-c?
- 28. Ý nghĩa của System.CLSCompliantAttribute là gì?
- 29. Ý nghĩa SQL của 0x5E5B7D7E là gì?
- 30. Ý nghĩa của! #: 3 là gì?