加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

8.8 Swift恒等运算符

发布时间:2020-12-14 06:32:24 所属栏目:百科 来源:网络整理
导读:/** 恒等运算符 */ class Rect { // 结构体成员变量 var width: Double = 5.0 var height: Double = 6.0 // 结构体的成员方法 , 可以访问使用成员属性。 func getWidth() - Double { return width } func show() - Void { print ( "width ( width )" ) } }

/**

恒等运算符

*/

class Rect {

// 结构体成员变量

var width: Double = 5.0

var height: Double = 6.0

// 结构体的成员方法,可以访问使用成员属性。

func getWidth() -> Double {

return width

}

func show() -> Void {

print("width(width)")

}

}

var rect1: Rect = Rect()

var rect2: Rect = rect1

print("---------------->")

print("rect1.width==(rect1.width)")

print("rect1.height==(rect1.height)")

// 改变rect1 的宽度

rect1.width = 100.0

print("rect2.width==(rect2.width)")

print("rect2.height==(rect2.height)")

/**

我们可以看到

rect1 赋给 rect2 后,改变 rect1的宽度,那么 rect2的宽度也改变了。

说明是让rect2指向rect1 也就是它们两个指向同一个实例。

说明类是引用类型

*/

/**

类的实例出现这种赋值操作的时候,比如将rect1 赋给 rect2

这个是引用,不会拷贝一块新的内存;

rect2 rect1 实际上指向同一个实例,称之为同一个实例的两个引用。

那么如果有多个变量或常量指向同一个类的实例的时候,那么我们怎么

判断这多个常量 变量是否指向同一个实例呢?

如何判断 rect2 rect1 指向同一个实例呢?

Swift提供了一个恒等于 运算符

*/

/**

关系运算符 == !=

判断两个对象是否指向同一个类的实例的。

===

!==

*/

if rect1 === rect2 {

print("equal")

}

if rect1 !== rect2 {

print("Not equal")

}

/**

特别注意的是,

只能用于类的实例

不能用于结构体

*/

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读