【发布时间】:2016-08-11 09:12:16
【问题描述】:
目标 C 代码:
- (instancetype)initWithInts:(int32_t)int1, ... {
va_list args;
va_start(args, int1);
unsigned int length = 0;
for (int32_t i = int1; i != -1; i = va_arg(args, int)) {
length ++;
}
va_end(args);
...
...
return self;
}
此代码用于计算方法的参数个数。
Swift 代码:
convenience init(ints: Int32, _ args: CVarArgType...) {
var length: UInt = 0
self.init(length: args.count)
withVaList(args, { _ in
// How to increase length' value in loop?
})
}
使用withVaList 循环使用CVaListPointer 的参数列表的最佳做法是什么?非常感谢您的帮助。
【问题讨论】:
标签: objective-c swift