首页

源码搜藏网

首页 > 开发教程 > 手机开发 >

Swift中使用NSLog的问题

创建时间:2016-07-01 16:59  

在Swift中如果想要以如下方式执行NSLog,则编译器必定抱怨:

class Foo {}
NSLog("%@",Foo())

因为Foo是原生Swift类不是继承自NSObject,而NSLog需要其Description方法,所以我们必须使Foo派生自NSObject,然后重载Description方法:

class Foo:NSObject {
    override var description: String {return "大熊猫侯佩"}
}

NSLog也支持字符串内插显示,这时你可以不从NSObject中派生,你只要遵守CustomDebugStringConvertible协议即可:

class Tom:CustomDebugStringConvertible{
    var debugDescription: String {return "勒布朗-詹姆斯"}
}

NSLog("\(Tom())")
0
0
   
上一篇:手把手教你做安豆计算器(二)-计算器界面布局
下一篇:Android 面试题总结之Android 进阶(二)

相关内容

热门推荐

    /