面试问道了block怎么写。长时间使用代码片段,一时竟没写出来。
衰啊!!!
记录下:
block的组成
void(^myBlock)(
NSString *str1,
NSString *str2);
void:返回值
myBlock:名字
str1,str2 : 参数(可以是很多个)
声明属性时的写法:
@property (copy,
nonatomic)
void (^tfBlock)(UITextField *textField);
typedef 的时候
typedef void(^success) (
NSString *states);
@interface LQSecondBlockViewController ()
@property (
nonatomic,copy) success networkingSuccess;
@end
局部变量时
int(^myBlock)(
int i )= ^(
int i){
return i +
1;
};
int j = myBlock(
1);
作为方法的参数时
- (
void)lwqNetWorkingsuccess:(
void(^)(
NSString * states)) success{
}
总结一下
作为方法的参数时 不需要在“^‘的后面加block的名字。 其余的情况都需要加。
转载请注明原文地址: https://ju.6miu.com/read-12745.html