3
A
回答
7
NSArray * array = @[];
初始化数组之间的区别是做NSArray * array = [NSArray array];
9
@[]
的新方式是简写:
id a = nil;
NSArray* array = [NSArray arrayWithObjects:&a count:0];
对于所有意图和目的,这只是[NSArray array]
的简写。
这是在编译器的特定版本中添加的功能(并且实际上并不需要运行时支持此特定语法)。
这是一点都不像的@""
速记在@""
产生编译时常并且将导致在运行时没有消息。事实上,@""
(任何@"sequence"
)是一种特殊情况,它发出的编译时间常量在运行时用零消息传递实现;零动力。 A @"..."
与Objective-C类相比,更像一个对象的常规实例。
+0
我认为@“”会产生一个NSString对象而不是编译时间常量。 –
+3
不是;它确实是一个编译时间常量,它通过动态链接器加载,就像类和其他编译时发出的数据一样。没有消息涉及。 – bbum
相关问题
- 1. NSArictionary的NSArray - 简单初始化语法
- 2. 从NSArray初始化结构?
- 3. 初始化方法
- 4. 切片类型的初始化方法无法初始化
- 5. 的NSMutableArray NSArray的和初始化
- 6. 初始化iPhone的多维NSArray devel
- 7. 在初始化后更改NSArray的值
- 8. 坠毁在NSArray的初始化
- 9. 如何初始化NSMutableArray里与NSArray的
- 10. 初始化方法调用
- 11. dll初始化方法
- 12. NSMutableArray初始化方法
- 13. Spring初始化方法params
- 14. 的Objective-C初始化/初始化方法
- 15. 使用超类方法初始化与初始化方法之间的区别
- 16. 使用NSArray初始化对象数组
- 17. 如何在ARC中初始化NSArray?
- 18. 可能用空值初始化NSArray?
- 19. 使用数字初始化NSArray
- 20. Guice在初始化对象后调用初始化方法
- 21. 正确的NSArray在方法中对伊娃数据进行初始化
- 22. 模拟ruby类的初始化方法?
- 23. 初始化对象后的方法nullreference
- 24. 在web.xml中初始化HttpServlet的方法
- 25. PyQt子类的初始化方法QTableWidgetItem
- 26. javafx中的初始化方法
- 27. pyclustering:初始化kmeans的预期方法
- 28. 初始化方法;自对象的LEN()
- 29. 初始化JpaPersistModule的最佳方法
- 30. initWithNavigationBarClass和UINavigationBar的初始化方法
1.与Xcode的版本无关(与使用的语言/标准/编译器的版本相关,而Xcode不是其中之一)。 2.“和NSString * string = @”“;'” - 我不这么认为。前者创建一个数组,后者创建一个字符串。 – 2013-01-23 15:56:33
一个很好的猜测,但大多数不正确。第一句话是正确的,休息是错误的。 – bbum
是的,这是正确的。很快就写下了我的答案。编辑我的答案。我的错。 – Mikael