学习了一下链式编程,总结了一下,个人觉得就是利用block直接按照格式写就行。注意格式写法,其实就是多了个返回值😝
下面用一个例子说明:
首先:新建一个Animal类 (😔 好吧...又是Animal...)
Animal.h文件
- (Animal *(^)(NSString *name))dogname;
- (Animal *(^)(NSString *food))eat;
- (Animal *(^)())run;
Animal.m文件
- (Animal *(^)(NSString *name))dogname
{
return ^(NSString *name){
NSLog(@"狗狗的名字叫: %@",name);
return self;
};
}
- (Animal *(^)(NSString *food))eat
{
return ^(NSString *food){
NSLog(@"狗吃了:%@",food);
return self;
};
}
- (Animal *(^)())run{
return ^(){
NSLog(@"能跑3公里");
return self;
};
}
最后我们在Main函数(我没有写Main函数👻),或者ViewController.m里面调用即可。
Animal *animal = [[Animal alloc] init];
animal.dogname(@"哈士奇").eat(@"一根大骨头").run();
打印结果如下:
Paste_Image.png
网友评论