objective-c - @property (nonatomic, copy) void(^doTransferMsg)(NSString *_msg)

浏览:34日期:2023-12-21

问题描述

不是很明白@property (nonatomic, copy) void(^doTransferMsg)(NSString *_msg)

这种声明属性方式。只知道void(^doTransferMsg)这是使用block方式声明方法。

问题解答

回答1:

或许这样更容易明白.h

typedef void(^doTransferMsg)(NSString *_msg);@property (nonatomic, copy) doTransferMsg transferMsg;

.m

@synthesize transferMsg;[self setTransferMsg:^(NSString *str){ NSLog(@'hello %@',str);}];transferMsg(@'navy');transferMsg(@'navy2');回答2:

把block当成一个普通类型看就明白了,在这里block和普通类型也没啥区别,就是定义一个这个类型的属性。

相关文章: