學(xué)習(xí)了一下鏈?zhǔn)骄幊袒蚝猓偨Y(jié)了一下诵叁,個(gè)人覺得就是利用block直接按照格式寫就行坛怪。注意格式寫法申眼,其實(shí)就是多了個(gè)返回值??
下面用一個(gè)例子說明:
首先:新建一個(gè)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;
};
}
最后我們?cè)贛ain函數(shù)(我沒有寫Main函數(shù)??),或者ViewController.m里面調(diào)用即可潮饱。
Animal *animal = [[Animal alloc] init];
animal.dogname(@"哈士奇").eat(@"一根大骨頭").run();
打印結(jié)果如下: