#import <Foundation/Foundation.h>
typedef void (^workBlock)(int day);
void work(workBlock w, int day)
{
NSLog(@"起床");
NSLog(@"刷牙");
NSLog(@"去车站");
NSLog(@"坐车");
w(day); // 如果写成 w() 提示错误: Too few arguments to block call, expected 1, have 0 , 参数太少 不能调用.
NSLog(@"去车站");
NSLog(@"坐车回家");
NSLog(@"吃饭");
NSLog(@"睡觉");
}
int main(int argc, const char * argv[])
{
@autoreleasepool {
workBlock w = ^(int i) {
switch (i) {
case 1:
NSLog(@"--->了解项目");
break;
case 2:
NSLog(@"--->分析项目");
break;
case 3:
NSLog(@"--->写代码");
break;
case 4:
NSLog(@"--->调试代码");
break;
case 5:
NSLog(@"--->离职");
break;
default:
break;
}
};
for (int i = 1; i <= 5; i++) {
work(w, i);
NSLog(@"==========");
}
}
return 0;
}
有参数block 调用
最新推荐文章于 2021-09-12 18:11:53 发布