gpt4 book ai didi

ios - Obj-c 如何继承一个有参数数组的方法?

转载 作者:可可西里 更新时间:2023-11-01 05:56:29 26 4
gpt4 key购买 nike

<分区>

我理解关键字“va_list”“va_start”“va_arg”“va_end”的用法。我的晚餐类有一个 init 方法,如下所示:

父类(super class):

- (id) initWithChildren:(NSObject*)firstChild, ... NS_REQUIRES_NIL_TERMINATION{
if(self = [super init]){
va_list children;
va_start(children, firstChild);

self.children = [[NSMutableArray alloc] initWithObjects:firstChild, nil];
firstChild.father = self;

NSObject* child;
while ((child = va_arg(children, NSObject*)) != nil){
[_children addObject:child];
}
va_end(children);
}
return self;
}

效果很好,但我很难继承。

子类

- (id) initWithName:(NSString*)name children:(NSObject*)firstChild, ... NS_REQUIRES_NIL_TERMINATION{
self = [super initWithChildren:"what should I write here?"];
if (self){
self.name = name;
//other subclass work
}
return self;
}

有什么想法吗?谢谢。

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com