Apa sebenarnya arti __block
kata kunci dalam Objective-C? Saya tahu ini memungkinkan Anda untuk memodifikasi variabel dalam blok, tetapi saya ingin tahu ...
- Apa sebenarnya yang dikatakannya kepada kompiler?
- Apakah itu melakukan hal lain?
- Jika hanya itu yang dilakukannya, mengapa itu diperlukan?
- Apakah ada di dokumen di mana saja? (Saya tidak dapat menemukannya).
__block
sama sekali.
__block
harus diterjemahkan ke Swift: "Penutupan [dalam Swift] memiliki semantik tangkap yang sama dengan blok [di Objective-C] tetapi berbeda dalam satu cara kunci: Variabel lebih bisa diubah daripada disalin. Dengan kata lain, perilaku __block di Objective-C adalah perilaku default untuk variabel di Swift. " Dari buku Apple: Menggunakan Swift dengan Kakao dan Objective-C (Swift 2.2).