gpt4 book ai didi

Objective-C block 语法

转载 作者:太空狗 更新时间:2023-10-30 03:50:38 27 4
gpt4 key购买 nike

Obj-C block 是我最近第一次使用的东西。我试图理解以下 block 语法:

在头文件中:

@property (nonatomic, copy) void (^completionBlock)(id obj, NSError *err);

在主文件中:

-(void)something{

id rootObject = nil;

// do something so rootObject is hopefully not nil

if([self completionBlock])
[self completionBlock](rootObject, nil); // What is this syntax referred to as?
}

非常感谢您的帮助!

最佳答案

block 是对象。

在您的情况下,您在方法内部检查 block 是否不为 nil,然后调用它传递两个必需的参数 ...

请记住, block 的调用方式与 c 函数的调用方式相同......

下面我把声明分成两部分让你更好地理解:

[self completionBlock]  //The property getter is called to retrieve the block object
(rootObject, nil); //The two required arguments are passed to the block object calling it

关于Objective-C block 语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12525828/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com