gpt4 book ai didi

iphone - Objective-C : Cocoa : 2 sets of variable arguments?

转载 作者:搜寻专家 更新时间:2023-10-30 19:55:17 26 4
gpt4 key购买 nike

有可能以这种方式有一个方法:

[obj mergeObjs:obj1,obj2,obj3,nil];

或者以这种方式有一个方法:

[obj mergeObjs:obj1,obj2...obj(n),nil usingBlocks:blk1,blk2,blk3....blk(m),nil];

其中 n 可能等于也可能不等于 m。

基本上多个变量参数列表在单个方法声明中。 ?

这不是一个潜在的答案:

[obj merge:[NSArray arrayWithObjects:[NSArray arrayWithObjects:...,nil],[NSArray arrayWithObjects:...,nil]...,nil]];

提前致谢。

这是我为单变量参数列表找到的链接:

http://developer.apple.com/library/mac/#qa/qa1405/_index.html How to create variable argument methods in Objective-C

最佳答案

您无法使用可变长度参数列表实现此目的,但您是否考虑过只传递两个数组?

[obj mergeObjs:(NSArray*)objs usingBlocks:(NSArray*)blocks];

现代版本的 clang(最近的 Xcode 版本使用的 Objective C 编译器)甚至支持 NSArray 文字

[instance mergeObjs:@[obj1, obj2, obj3] usingBlocks:@[^{}, ...]];

(当然,确保适本地复制您的 block 以插入到 NSArray 中)。

关于iphone - Objective-C : Cocoa : 2 sets of variable arguments?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10138469/

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