在Objective-C中,可以使用可变参数列表(varargs)来接受无限参数的方法。可变参数列表是一种特殊的参数类型,允许方法接受不定数量的参数。
要在Objective-C中构造数组,可以使用NSArray
类或NSMutableArray
类。下面是一种在接受无限参数的方法中构造数组的示例:
- (NSArray *)constructArrayWithObjects:(id)firstObject, ... {
NSMutableArray *array = [NSMutableArray array];
// 创建一个指向可变参数列表的指针
va_list args;
va_start(args, firstObject);
// 遍历可变参数列表,将参数依次添加到数组中
id object = firstObject;
while (object) {
[array addObject:object];
object = va_arg(args, id);
}
// 结束可变参数列表的访问
va_end(args);
return array;
}
在上述示例中,首先创建了一个可变数组array
。然后,通过使用va_list
、va_start
和va_arg
宏来遍历可变参数列表,并将参数依次添加到数组中。最后,使用va_end
宏结束可变参数列表的访问。
使用示例:
NSArray *myArray = [self constructArrayWithObjects:@"Object1", @"Object2", @"Object3", nil];
这样就可以在Objective-C中构造一个包含任意数量对象的数组了。
请注意,以上示例中的方法只能接受对象类型的参数。如果需要接受其他类型的参数,可以根据具体情况进行修改。
领取专属 10元无门槛券
手把手带您无忧上云