在C/Obj-C中,我们做了一个像typedef int MYINT;这样的类型定义,这是清楚的.

为block-typedef void (^MyBlock) (int a);做typedef

现在,我们可以使用MyBlock.

它不应该像-typedef void (^MyBlock) (int a) MyBlock;#define一样吗?

语法是如何工作的?

推荐答案

参见"模块编程主题"中的Declaring a Block Reference:

块变量保存对块的引用.你用

所以

 typedef void (^myBlock) (int a);

使用与相同的语法定义块类型

 typedef void (*myFunc) (int a);

声明函数指针.

有关函数指针的更多信息,请参见例如Understanding typedefs for function pointers in C.

Objective-c相关问答推荐

NSDateFormatter,我做错了什么还是这是一个错误?

如何用零填充左侧的整数?

如何更改 UIButton 的突出显示 colored颜色 ?

在从 UIViewController 调用的非保留完成中引用 self 时,weakSelf/strongSelf 舞蹈真的有必要吗?

让 NSRunLoop 等待设置标志的最佳方法?

Objective C for循环中断并继续

UITableView 无限滚动

在 NSData 和 base64 字符串之间转换

与 iOS 6.0 原生 Facebook 集成共享:通过我的应用名称发布?

动态转发: suppress Incomplete Implementation 警告

iOS:使用设备修饰符加载 xib 文件?

Objective-C 的文档生成器?

如何将 .plist 文件中的数据 struct 读入 NSArray

可变集合有文字语法吗?

检测平移手势结束

通过将另一个字符串重复给定次数来创建 NSString

如何从 UIColor 对象中获取红绿蓝 (RGB) 和 alpha?

UICollectionView 断言失败

使用 [NSDate date] 获取当前日期和时间

UITableViewCell中的文本居中对齐问题