截图1报错的函数形式只能用在类中。
它们之间还有一些区别:
(1)类的函数形式有外部参数名,但是main.m中定义的这种函数形式没有。
外部参数名是什么呢?它可以起到提示,解释某个参数意义的作用(另外,在Swift中也可以自己选择性加入外部�参数名)。
分别调用TestClass的方法和main.m文件里定义的方法看出区别:
如string2,string3,和completionHandler都是外部参数名,而main的自定义方法里头只有函数名。
(2)两种函数形式的代码块参数格式也不同。
(为了清晰�直观而加入了某些空格,实际编码无需太多空格。)
第一种是 (void (^) (id response)) completionHandler
第二种是 (void (^completionHandler) (id response))
另:第二种形式的代码块前的void可以去掉,但会报warning,这时默认返回为int类型。