关于Block

1.Block:


1.是一种新的数据类型,用于定义变量,存储一段代码,可以在任何时候执行,Block 既可以作为函数参数或者函数的返回值,而本身又可以带输入参数或返回值,与传统的函数指针类似。
2.字面上来讲,Block 就是一个代码块,但它的神奇之处在于在内联(inline)执行的时候(这点和 c++很像)还可以传递参数。同时 Block 本身也可以被作为参数在方法和函数间传递,这就给了 Block 无限的可能性。

2.语法规则:关键符号 ^


1.无参无返回值:

//定义一个Block 变量,名称为myBlock,无参无返回值。
void (^myBlock)(void) = ^void(void){
    NSLog(@"Block Running");
}

2.有参数有返回值类型:

double(^myBlock1)(int,int)=^double(int a,int b){//返回值类型是double 参数是两个int整型
//    if(b!=0) return  a*1.0/b;
//    else return 0;
//    等效于下面的这一句。
return b?a*1.0/b:0;//如果 b 为真(即不为0)返回 a*1.0/b 否则返回0;
};

3.待续。。。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 概述 上图就是一个block简单使用,它包括了block的声明、赋值实现、调用 三个部分,其中,实现部分可以看作是...
    小白进城阅读 4,801评论 2 8
  • FBI WARNING:纯属个人见解,有可能是错误的理解。O(∩_∩)Oblock作用1.可以传递数据,取代代理模...
    请叫我魔法师阅读 4,062评论 1 0
  • 关于Block: 在我们使用OC进行iOS开发和Mac OS开发中,Block语法是我们最常见的语法之一,而且苹果...
    cxlhaha阅读 2,817评论 0 3
  • 前言 人生苦多,快来 Kotlin ,快速学习Kotlin! 什么是Kotlin? Kotlin 是种静态类型编程...
    任半生嚣狂阅读 26,335评论 9 118
  • 最近在读一本小说,名字叫《去你的,生活》这本书主要讲述了作者通过与画家卢西安·弗洛伊德共进早餐,而了解他的生活和作...
    杨杨杨菇凉阅读 1,950评论 0 1