Chính xác thì __block
từ khóa trong Objective-C nghĩa là gì? Tôi biết nó cho phép bạn sửa đổi các biến trong các khối, nhưng tôi muốn biết ...
- Chính xác thì nó nói gì với trình biên dịch?
- Nó có làm gì khác không?
- Nếu đó là tất cả những gì nó làm thì tại sao nó lại cần thiết ở nơi đầu tiên?
- Có phải trong tài liệu ở bất cứ đâu? (Tôi không thể tìm thấy nó).
__block
cả.
__block
nên dịch sang Swift: Clos Closures [trong Swift] có ngữ nghĩa chụp tương tự như các khối [trong Objective-C] nhưng khác nhau theo một cách chính: Biến có thể thay đổi được thay vì sao chép. Nói cách khác, hành vi của __block trong Objective-C là hành vi mặc định cho các biến trong Swift. Từ cuốn sách của Apple: Sử dụng Swift với ca cao và Objective-C (Swift 2.2).