IOS 可变参数

来源:互联网 发布:编程培训机构哪个好 编辑:程序博客网 时间:2024/06/05 16:05

@interface MyObject : NSObject {
  NSMutableArray *_parameters;
}
- (id)initWithObject : (id)firstObj, ... NS_REQUIRES_NIL_TERMINATION;
@end

////////////////////////////////////////////////////////////////////////////////////
@implement
- (id)initWithObject : (id)firstObj, ... {
    if (self = [super init]) {
        _parameters = [[NSMutableArray alloc] init];
 
        va_list args;
        va_start(args,firstObj);
        if (firstObj != nil) {
            [_parameters addObject:firstObj];
            id nextobj = nil;
            while ((nextobj = va_arg(args, id)) != nil) {
                [_parameters addObject:nextobj];
            }
        }
    }
    return self;
}
@end

0 0
原创粉丝点击