下面是编程之家 jb51.cc 通过网络收集整理的代码片段。
编程之家小编现在分享给大家,也给大家做个参考。
block类似于函数指针,能实现函数回调, 下面是一个男朋友委托女朋友洗衣服的简单代理: 分析:Man是被代理,需要委托Girl对象 如果要实现回调,Man需要有一个block类型的对象,并拥有block的调用,而Girl是代理方,要实现洗衣服这件事,Girl需要有block的代码实现部分 具体代码如下: // Man.h #import <Foundation/Foundation.h> typedef void (^Funblock)(NSInteger); @interface Man : NSObject @property(nonatomic,copy)Funblock myblock; -(void)ask; @end // Man.m #import "Man.h" @implementation Man -(void)ask{ _myblock(10); } @end // Girl.h #import <Foundation/Foundation.h> @interface Girl : NSObject -(void)wash; @end // Girl.m // #import "Girl.h" #import "Man.h" @implementation Girl -(void)wash{ Man *m=[[Man alloc] init]; m.myblock=^(NSInteger count){ NSLog(@"洗了%ld件衣服",count); }; [m ask]; } @end // main.m #import <Foundation/Foundation.h> #import "Man.h" #import "Girl.h" int main(int argc,const char * argv[]) { @autoreleasepool { // insert code here... Girl *g=[[Girl alloc] init]; [g wash]; } return 0; }
以上是编程之家(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。
如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。