使用可变参数列表创建NSArray

时间:2010-08-30 16:49:11

标签: objective-c cocoa cocoa-touch arguments nsarray

此数组便捷方法采用逗号分隔的以nil结尾的对象列表。

myArray = [NSArray arrayWithObjects:aDate, aValue, aString, nil];

nil的目的是什么?

2 个答案:

答案 0 :(得分:4)

Null终止变量参数列表va_list,继续遍历参数列表,直到它们遇到占位符或标记nil

由于该方法无法知道您传递了多少个参数,因此需要使用sentinel(nil)来判断列表的结束位置。

答案 1 :(得分:1)

标记对象列表的结尾。

以下是CocoaBuilder的讨论。