黑马程序员技术交流社区

标题: Block作为函数的返回值 [打印本页]

作者: rina_2010    时间: 2016-4-13 22:05
标题: Block作为函数的返回值
        Block作为函数的返回值,为什么要把别名作为返回值,不能像int类型那样直接把block作为函数的返回值呢?

typedef void (^newType)();

newType test(){
//block类型作为函数的返回值
    newType w = ^{
   
    NSLog(@"xxxxxxxx");
    NSLog(@"Hello,World!");
   
    };
   
    return w;
作者: Latinno    时间: 2016-4-15 16:27
围观高手解答
作者: rina_2010    时间: 2016-4-15 19:01
哪位大神知道呀?请告知,谢谢!
作者: 叶子哥    时间: 2016-4-15 19:57
typedef void (^newType)(); 这句代码是自定义一个新的类型名:newType (block类型的别名)  相当于int / char等类型名。
newType test(){............};这是一个无参数、返回值为newType类型的函数。newType w  这是声明了一个newType w类型的变量 W。因为newType 是block类型的别名,而newType test()函数要求返回一个block类型的变量,所以直接返回 W。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2