码迷,mamicode.com
首页 > 其他好文 > 详细

Objective-C:09_Block

时间:2014-09-24 18:58:07      阅读:151      评论:0      收藏:0      [点我收藏+]

标签:style   color   strong   div   sp   cti   on   c   代码   

block用来保存一段代码
block标识:^
blick和函数很像:
    1、可以保存代码段
    2、有返回值
    3、有形参
    4、调用方式一样
    
    
    block的定义:
        返回值类型  (^block名称)(形参类型列表) = ^(参数列表){代码段};
    block调用:
        block名称(参数列表);
 
    int (^sumblock)(int,int) = ^(int a,int b){
        return a+b;
    };
 
    定义block变量:
         int (^sumblock)(int,int) 
    利用block封装代码:
        ^(int a,int b)
        {
        return a+b;
        };
        
    block访问外部变量:
        1、block内部可以访问外部的变量
        2、默认情况下,block内部不能修改外面的局部变量
        3、给局部变量加上__block关键字(前面两条下划线),这个局部变量就可以在block内部修改 
    
    利用typedef定义block类型:
        typedef int (^Myblock)(int , int);
        
        Myblock     b1,b2;
        Myblock  sumblock=^(int a,int b) {
            return a+b;
            };
 
 
 
 
和指向函数的指针很像:
    int sum(int a , int b)
    {
        return a+b;
    }
 
    函数指针:int (*p)(int , int) = sum;
                    p(10 ,12);
 
 
 
 
 
 
 
 
 
 
 
 

Objective-C:09_Block

标签:style   color   strong   div   sp   cti   on   c   代码   

原文地址:http://www.cnblogs.com/yaofch107/p/3990817.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!