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

如何在Swift中使用CVaListPointer参数调用方法,第1张

概述我该如何调用以下方法?该方法属于打印日志的类. func log(format: String!, withParameters valist: CVaListPointer) 我想要实现的目标在Objective-C中看起来像这样: NSLog(@"Message %@ - %@", param1, param2); 有任何想法吗? CVaListPointer是C va_list类型的Swif 我该如何调用以下方法?该方法属于打印日志的类.
func log(format: String!,withParameters vaList: CVaListPointer)

我想要实现的目标在Objective-C中看起来像这样:

NSLog(@"Message %@ - %@",param1,param2);

有任何想法吗?

CVaListPointer是C va_List类型的Swift等价物
并且可以使用withVaList()从[CVarargType]数组创建.

例:

func log(format: String!,withParameters vaList: CVaListPointer) {    NSLogv(format,vaList)}let args: [CVarargType] = [ "foo",12,34.56 ] withVaList(args) { log("%@ %ld %f",withParameters: 
2016-04-27 21:02:54.364 prog[6125:2476685] foo 12 34.560000
) }

输出:

对于Swift 3,用CVararg替换CVarargType.

总结

以上是内存溢出为你收集整理的如何在Swift中使用CVaListPointer参数调用方法全部内容,希望文章能够帮你解决如何在Swift中使用CVaListPointer参数调用方法所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/web/1036008.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-24
下一篇2022-05-24

发表评论

登录后才能评论

评论列表(0条)

    保存