【发布时间】:2015-09-14 22:45:27
【问题描述】:
我希望能够将NSLog 与 Swift 结构一起使用。我可以吗?我现在正在做的是:
extension CGRect {
var description:String {
return "\(self.left),\(self.top)_|\(self.width),\(self.height)"
}
}
NSLog("rect for something %@", self.someView.frame.description)
我曾希望只需将description var 添加到CGRect 就足够了,我不需要在NSLog() 调用中显式添加.description。但是当我尝试时,我得到了
Argument type 'CGRect' does not conform to expected type 'CVarArgType'
结构数组似乎也有类似的问题(因为数组也是结构?)
【问题讨论】:
-
看来你得让
CGRect采用CVarArgType协议了。 -
我找到了
CVarArgType协议的文档,但是关于如何让一种类型采用它的细节非常少。它确实说许多值类型都采用它,所以我必须相信CGRect可以添加到该列表中。