block学习,保留这份代码,随时放着参考学习
block: 就一个作用,先保存一段,等待调用,(相当于接口,只是IOS特有写法,且用于不同场合)
/**
重学习block
1、方法,下面play这个方法,就是我们C语言函数方法,可以放在main方法中调用,但是不能更改
2、block可以有返回值,有参数
学习typedef
1、了解普通typedef,如int,这里写法是:typedef + 类型 + 简写名称
上面是普通写法,那block怎么写呢?
2、相比较上面,block写法上少了简写,而是直接typedef + block:如:typedef int (^MyBlock)(int, int);
3、使用,如果采用2的写法,则使用上将MyBlock当做一种类型,它自身写出的就对应这种类型
*/
#import <Foundation/Foundation.h>
typedef int MyInt;//这里MyInt就代表int
typedef int (^MyBlock)(int, int);
void paly()
{
NSLog(@"play");
}
int main(int argc, const char * argv[])
{
@autoreleasepool {
//函数
paly();
/**
* Block学习
*/
//block写法一,相当于方法,写好后当做方法调用,这里可以写局部,也可以写全局,二者都可以
void (^blockDemo)() = ^{
NSLog(@"Hello, World!");
};
blockDemo();
//有参数block
MyBlock sumBlock = ^(int a, int b){
return a + b;
};
MyBlock minusBlock = ^(int a, int b){
return a - b;
};
int result = sumBlock(1, 2);
NSLog(@"%d", result);
}
return 0;
}
07-24
07-24