基本上,我想编写一个如下所示的函数.
static let logger = oslog(subsystem: "com.example.foo",category: "foobar")func logError(_ message: StaticString,_ args: Any...) { os_log(message,log: logger,type: .error,args)}
不幸的是,我似乎无法弄清楚传递参数的神奇语法,并且在CVararg讨论的泥潭中有点迷失.
(…这让我想念Python的splatting语法)
解决方法 我还没有找到解决方案,所以这个愚蠢的黑客:switch args.count {case 0: os_log(message,log: log!,type: type)case 1: os_log(message,type: type,args[0])case 2: os_log(message,args[0],args[1])case 3: os_log(message,args[1],args[2])default: os_log(message,args)}总结
以上是内存溢出为你收集整理的ios – 在Swift 4中为os_log传递可变参数全部内容,希望文章能够帮你解决ios – 在Swift 4中为os_log传递可变参数所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)