新手入门。如果我的理解错误,让我纠正一下。iOS中以下语法的含义是什么? typedef void(^ something)(NSInteger * a);
typedef void (^someString) (datatype variable_name, datatype variable_name).
我基本上是从C背景。
这多少有点像一个typedef为一个函数指针?..
新手入门。如果我的理解错误,让我纠正一下。iOS中以下语法的含义是什么? typedef void(^ something)(NSInteger * a);
typedef void (^someString) (datatype variable_name, datatype variable_name).
我基本上是从C背景。
这多少有点像一个typedef为一个函数指针?..
不完全是一个函数指针,但一个块。一个块是C语言的Apple扩展:基本上它实现了lambda函数。它将someString
类型键入到不返回任何内容的块(void
)并取两个参数。
更多在这里阅读: http://en.wikipedia.org/wiki/Blocks_(C_language_extension)
这里: http://developer.apple.com/library/ios/#documentation/Cocoa/Conceptual/Blocks/Articles/bxUsing.html
其称为块,你可以使用它像一个功能,但它有一些特殊待遇, 退房的Documentation