Swift学习笔记-类和结构体

2018-05-23  本文已影响0人  女粉丝

1.swift类和结构体有很多共同点:

与结构相比,类还有如下的附加功能:

2.类和结构体的定义方式

struct Resolution {
    var width = 0
    var height = 0
}
class VideoMode {
    var resolution = Resolution()
    var interlaced = false
    var frameRate = 0.0
    var name: String?
}

生成类或者结构体的实例用(),通过这种方法所创建的类或者结构体实例,其属性均会被初始化为默认值。

let x = VideoMode()

3.属性访问

通过.语法可以访问实例的属性。

print(x.frameRate)

结构体都有一个自动生成的成员逐一构造器。类没有。

let x = Resolution(width: 20, height: 20)

4.结构体和枚举是值类型

在 Swift 中,所有的结构体和枚举类型都是值类型。这意味着它们的实例,以及实例中所包含的任何值类型属性,在代码中传递的时候都会被复制。

5.类是引用类型

let tenEighty = VideoMode()
let alsoTenEighty = tenEighty
alsoTenEighty.frameRate = 30.0

这里alsoTenEighty是let修饰的,但是仍然可以修改属性frameRate,因为alsoTenEighty常量的值没有改变,只是改变了alsoTenEighty引用的frameRate的值,而frameRate是var修饰的。

上一篇下一篇

猜你喜欢

热点阅读