gpt4 book ai didi

objective-c - Objective-C 中 "_"和 "__"有什么区别?

转载 作者:行者123 更新时间:2023-12-03 17:30:50 24 4
gpt4 key购买 nike

我读到,_(下划线)仅用于告知变量/方法/类仅供 API 使用,不应由其他程序员使用。

__(双下划线)怎么样?

在此示例中__block BOOL found = NO;

摘自有关阻止对象的 Apple 文档。

另外,谁能帮我理解指针到指针的概念?**变量我读过一些关于它的答案,但并没有真正明白。我应该何时以及如何使用它?

最佳答案

单下划线传统上用于私有(private) API(方法,有时是 ivars)。它们的主要目的是防止名称冲突。

__block 是新 block API 的关键字。一般来说,双下划线关键字是给编译器用的。

对于指向指针的指针,NSError 是一个很好的例子:当一个方法想要返回一个新的 NSError 对象作为其参数的一部分(而不是返回值)时,您可以需要一个指向 NSError * 类型变量的指针,以便您可以对其进行赋值。使用简单的指针,您只能访问该对象,但不能(重新)分配它。

关于objective-c - Objective-C 中 "_"和 "__"有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4313642/

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