我读过_
(下划线)仅用于表示变量/ method / class仅供API使用,不应由其他程序员使用。
__
(双下划线)怎么样?
在此示例__block BOOL found = NO;
来自Apple Docs关于阻止对象。
此外,任何人都可以帮助我理解指针指向的概念吗?
**var
我已经阅读了一些关于它的答案,但并没有真正得到它。何时以及如何使用它?
答案 0 :(得分:5)
单下划线传统上用于私有API(方法,有时是ivars)。它们的主要目的是防止名称冲突。
__block
是新块API的关键字。通常,双下划线关键字用于编译器。
对于指针的指针,NSError
是一个很好的例子:当一个方法想要返回一个新的NSError
对象作为其参数的一部分(不是返回值)时,你需要一个指向变量的指针类型NSError *
,以便您可以分配它。使用简单的指针,您只能访问该对象,但不能(重新)分配它。