ios – 快速宣言的问题

前端之家收集整理的这篇文章主要介绍了ios – 快速宣言的问题前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我只是问自己为什么我不能直接在 Swift的Class声明中做这样的事情:
let width = 200.0
let height = 30.0

let widthheight = width-height

我不能用2个其他常量创建常量.如果我在函数/方法中使用它一切正常.

谢谢

解决方法

当你写下宽度高度=宽度 – 高度时,这隐含意味着让宽度高度= self.width – self.height.在Swift中,只有在所有成员都被初始化之后才允许使用self – 这里包括widthheight.

但是,在init方法中你有一点灵活性,你可以在这里写下这样的东西:

class Rect {

    let width = 200.0
    let height = 30.0
    let widthheight: Double
    let widthheightInverse: Double

    init() {
        // widthheightInverse = 1.0 / widthheight // widthheight not usable yet
        widthheight = width - height
        widthheightInverse = 1.0 / widthheight // works
    }

}

猜你在找的iOS相关文章