OC中Block的使用

Block的定义和函数的定义一样只不过需要把*修改成^,block的使用如下所示:

int (^blockSum) (int, int) = ^(int a, int b){

    return a +b;

};

int a = blockSum(12,23);

Nslog("%d", a);

// 类型是:int (^)(int a, int b)

// 定义了一个返回类型是int, 带有两个int参数的函数,匿名函数在OC里面叫BLock,类型的表述应该是:一个返回值为int,有两个int参数的Block

// ^起到标示符的作用,告诉编译器,我们定义了一个Block

// blockSum叫做block变量,即存放block值得变量(整形变量存放的是整形变量)

// 初值,也叫block值,上例中的^(int x, int y){return x +y},也就是block的值

// 因为block是匿名函数,没有函数名,所以没办法借助函数名去执行函数,因此,初值只能是函数的实现体

// block值得格式:^返回类型(参数列表){函数体}

// 返回类型可以省略,以函数体里的return的结果作为返回类型

// 如果block类型里面没有参数,Block的值也不需要参数

// 此外也可以通过Typedef定义一个block

typedef int(^ myblocks)(int ,int );

//使用时

myblock block = ^(int a, int b){

return a + b;

};

int a = block(12, 21);


******block注意事项下回分解**************************************


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
OC(Objective-C)是一种面向对象的编程语言,它支持在使用方法和block方法是在定义的方法,可以直接通过名来调用,而不需要实例化对象。而block是一种闭包,可以在代码定义并传递给方法或函数,用于延迟执行特定的逻辑。 在OC,可以使用方法来创建和操作的实例,例如通过一个工厂方法创建对象,或者在方法实现一些与相关的逻辑。方法通常使用“+”符号进行声明和实现。 而block可以在方法作为参数传递,也可以在方法定义和使用block可以捕获其所在作用域的变量,可以在方法内部延迟执行一段代码,也可以用于实现回调等功能。block的定义和使用使用“^(){}”语法。 方法和block可以结合使用,例如可以在方法接受一个block作为参数,并在合适的时机调用该block,以实现一些灵活的逻辑。通过方法和block的组合,可以在OC实现更加灵活和强大的功能,例如在异步操作使用block来回调结果,或者在工厂方法使用block来定制对象的初始化逻辑等。 总而言之,方法和blockOC的两个重要特性,它们可以分别用于的操作和延迟执行逻辑,也可以结合使用以实现更加灵活的功能。在实际的OC开发方法和block通常会被广泛使用,可以帮助开发者更加简洁和灵活地实现代码逻辑。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值