真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Objective-C(13)代碼塊---block

  • block類型

    為興海等地區(qū)用戶提供了全套網(wǎng)頁設計制作服務,及興海網(wǎng)站建設行業(yè)解決方案。主營業(yè)務為做網(wǎng)站、網(wǎng)站建設、興海網(wǎng)站設計,以傳統(tǒng)方式定制建設網(wǎng)站,并提供域名空間備案等一條龍服務,秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務。我們深信只要達到每一位用戶的要求,就會得到認可,從而選擇與我們長期合作。這樣,我們也可以走得更遠!

block是一種數(shù)據(jù)類型,在iOS開發(fā)中廣泛使用且被蘋果公司極力推薦使用,其功能很像C語言中的函數(shù)指針。

     ^ 是block的特有標志。

     block的實現(xiàn)代碼包含在{ }中。

     大多數(shù)情況下,以內(nèi)聯(lián)的形式被定義及使用。

void (^demoBlock)() = ^ {
    NSLog(@"demo Block");
}
int (^sumBlock)(int, int) = ^(int x, int y) {
    return x + y;
}

 

block的使用和函數(shù)指針的使用類似

int (^sumblock)(int, int) = ^(int a, int b) {
    return a>b?a:b;
}
int c = sumblock(10, 20);
NSLog(@"c=%d", c);

block內(nèi)部可以訪問外部的變量

     外部的局部變量,block內(nèi)部不能修改,全局變量可以。

     如果局部變量使用__block聲明,則可以在內(nèi)部修改。

int a = 10;
__block int b = 20;
void (^myblock)();
myblock = ^ {
    NSLog(@"a=%d", a);
    b = 20;
}
myblock();

     

實際上,定義block時會對局部變量進行拷貝(副本)

block的重要意義:在處理異步任務時非常方便,這也是block應用的難點


當前題目:Objective-C(13)代碼塊---block
分享路徑:http://weahome.cn/article/pchhed.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部