客观C中的^是什么意思?

时间:2012-02-03 09:34:44

标签: objective-c

Objective C中的^字符是什么意思?如下面的代码

TWTweetComposeViewControllerCompletionHandler 
    completionHandler =
    ^(TWTweetComposeViewControllerResult result) {
        switch (result)
        {
            ...
        }
        [self dismissModalViewControllerAnimated:YES];
    };

3 个答案:

答案 0 :(得分:8)

它表示一个“块”,一段代码可以打包到一个对象中并在以后使用。在您的示例中,它指定了稍后调用的完成处理程序,可能是在用户单击“确定”或某个类似按钮关闭警报时。

块也可以与Grand Central Dispatch一起使用,在这种情况下,它们用于生成可以在另一个线程上同时和异步运行的代码单元。

答案 1 :(得分:2)

这是一个“块”,你可以在Apple-Developer-doc中读到这个,它主要用于多线程。

答案 2 :(得分:0)

它用作块定义的一部分:

^(return_type retval) {
  statements;
}

您也会将其视为块声明的一部分。