作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
Apple 倾向于给出这样的例子:
NSError __strong *error = nil;
或
-(BOOL)performOperationWithError:(NSError * __autoreleasing *)error;
如果我可以这样做,我会发现它更具可读性和逻辑性:
__strong NSError *error = nil;
-(BOOL)performOperationWithError:(__autoreleasing NSError**)error;
快速测试显示编译器没有提示我的编写方式。无论如何我做错了,还是这样写就可以了?
最佳答案
不,所有权限定符的位置根本不重要。由于所有权限定符仅对指向对象的指针类型有意义,因此您的意图绝不会含糊不清。无论你把它放在哪里,编译器都可以很容易地弄清楚你的意图,所以 ARC 就是这样做的。
如果您可以访问 iOS Apple 开发者论坛,那么您可以在 https://devforums.apple.com/message/458606 上看到我向 Apple 工程师提出了同样的问题。 .
关于objective-c - ARC 所有权限定词的位置重要吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8864742/
我有一个编译错误: error C3848: expression having type 'const unicode::endian_swap' would lose s
在N3421 - Making Operator Functors greater<> , std 函数对象的新特化是: template <> struct plus { template a
我找到了这个tutorial关于正则表达式,虽然我直观地理解“贪婪”、“不情愿”和“占有”限定符的作用,但我的理解似乎存在严重漏洞。 具体来说,在以下示例中: Enter your regex: .*
我是一名优秀的程序员,十分优秀!