- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我想看看它是如何创建数组的。如何查看显示其完成方式的 .m 文件?
最佳答案
如@Ken 所述,您看不到源代码(尽管您可以通过 gdb 反汇编该方法)。
该方法本身创建了给定数组的不可变(无法更改)、自动释放副本。以下行为相同:
// Both resulting arrays are immutable and won't be retained
NSArray* immutableArray = [[[NSArray alloc] initWithArray:mutableArray] autorelease];
NSArray* immutableArray = [NSArray arrayWithArray:mutableArray];
NSArray* immutableArray = [[mutableArray copy] autorelease];
根据简洁性选择您喜欢的一个,我猜 :-)。
关于iphone - -arrayWithArray 实际上做了什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1391914/
我想看看它是如何创建数组的。如何查看显示其完成方式的 .m 文件? 最佳答案 如@Ken 所述,您看不到源代码(尽管您可以通过 gdb 反汇编该方法)。 该方法本身创建了给定数组的不可变(无法更改)、
这些都在我的应用程序中工作,没有任何明显的区别: 1) theArray = [[NSMutableArray alloc] initWithArray:[NSKeyedUnarchiver unar
我是 obj-c 开发的新手,但有部分 C 开发背景。这可能是一个菜鸟问题,但我无法在其他地方得到确切的答案。数组和字符串的这些片段与可能的其他类型的对象有什么区别: NSArray *origina
当你将 nil 传递给 arrayWithArray: 时会发生什么? 假设我有以下代码: NSMutableArray *myArray = [NSMutableArray arrayWithArr
最近我经常使用数组,我想知道..这两行之间有什么区别。 NSArray *array = [NSArray arrayWithArray:someArray]; 和 NSArray *array =
给定以下代码示例,newMutableArrray 变量是根据两个不同的初始化而不同,还是相同? NSArray *originalArray = @[obj1, obj2, oj3]; NSMuta
这个问题在这里已经有了答案: 关闭 10 年前。 Possible Duplicate: Is literal creation of an NSMutableDictionary less eff
我是一名优秀的程序员,十分优秀!