且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

如何在Swift中使用CVaListPointer参数调用方法

更新时间:2023-02-21 09:22:53

CVaListPointer是C va_list类型的Swift等效项 可以使用withVaList()[CVarArgType]数组创建.

CVaListPointer is the Swift equivalent of the C va_list type and can be created from an [CVarArgType] array using withVaList().

示例:

func log(format: String!, withParameters valist: CVaListPointer) {
    NSLogv(format, valist)
}

let args: [CVarArgType] = [ "foo", 12, 34.56 ] 
withVaList(args) { log("%@ %ld %f", withParameters: $0) }

输出:


2016-04-27 21:02:54.364 prog[6125:2476685] foo 12 34.560000

对于 Swift 3,CVarArgType替换为CVarArg.