Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective-C中块和参数之间的差异_Objective C_Arguments_Objective C Blocks - Fatal编程技术网

Objective-C中块和参数之间的差异

Objective-C中块和参数之间的差异,objective-c,arguments,objective-c-blocks,Objective C,Arguments,Objective C Blocks,在目标C中,如果块可以接受参数并返回值 那么块和参数之间有什么区别呢 一个块只是代码的一部分,仅此而已 另一方面,参数是传递给函数或块的值,以便该块中的代码可以使用它 例如: ^(int anIntegerArgument){ //this is inside of a block } 整个语句称为块。但是,integerargument的值是一个参数 如果需要向方法传递一些自定义代码,则块可以是参数。例如,在SpriteKit中,在运行操作后,您可以选择在操作完成后运行一些代码。要执

在目标C中,如果块可以接受参数并返回值


那么块和参数之间有什么区别呢

一个块只是代码的一部分,仅此而已

另一方面,参数是传递给函数或块的值,以便该块中的代码可以使用它

例如:

^(int anIntegerArgument){
    //this is inside of a block
}
整个语句称为块。但是,integerargument的值是一个参数

如果需要向方法传递一些自定义代码,则块可以是参数。例如,在SpriteKit中,在运行操作后,您可以选择在操作完成后运行一些代码。要执行此操作,请将块作为参数传入:

[self runAction:anAction completion:^{
     //block run at the end of an action
}];

块可以有参数。块也可以是接受块的方法的参数。因此,每当我需要使用参数时,我可以像上面的例子一样将参数传入块中?是的,这正是将值传入块的方式。