前言
记得以前记忆中一直是const定义后无法被修改,但是突然发现某些情况其实是可以被“修改”的。
定义
const是用来定义常量的,且定义时必须初始化。
测试
对于基本类型的数据是不可修改的。

而对于引用类型的数据,因为const中保存的是对象的指针,这就意味着,const仅保证指针不会发生改变,允许对象的属性改变(指针不会改变)。
改变对象的属性值不会报错:

而改变对象的指针会报错,就算新对象的内容和原来一样:

文章探讨了在编程中使用const定义常量时,尽管基本类型数据不可变,但引用类型的const对象可以改变其属性,因为const只保证指针不变,不阻止对象内容的修改。然而,尝试改变const对象的指针会导致错误。
记得以前记忆中一直是const定义后无法被修改,但是突然发现某些情况其实是可以被“修改”的。
const是用来定义常量的,且定义时必须初始化。
对于基本类型的数据是不可修改的。

而对于引用类型的数据,因为const中保存的是对象的指针,这就意味着,const仅保证指针不会发生改变,允许对象的属性改变(指针不会改变)。
改变对象的属性值不会报错:

而改变对象的指针会报错,就算新对象的内容和原来一样:

323
491
1033

被折叠的 条评论
为什么被折叠?