打印
[开发资料]

关键字const有什么含意?

[复制链接]
104|14
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
中国龙芯CDX|  楼主 | 2023-12-16 14:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
只要一个变量前用const来修饰,就意味着该变量里的数据只能被访问,而不能被修改,也就是意味着const“只读”(readonly)。

规则:const离谁近,谁就不能被修改;

const修饰一个变量时,一定要给这个变量初始化,若不初始化,在后面也不能初始化。

const作用:

1:可以用来定义常量,修饰函数参数,修饰函数返回值 ,且被const修饰的东西,都受到强制保护,可以预防其它代码无意识的进行修改,从而提高了程序的健壮性(是指系统对于规范要求以外的输入能够判断这个输入不符合规范要求,并能有合理的处理方式。ps:即所谓高手写的程序不容易死);
2:使编译器保护那些不希望被修改的参数,防止无意代码的修改,减少bug;
3:给读代码的人传递有用的信息,声明一个参数,是为了告诉用户这个参数的应用目的;
const优点:

1:编译器可以对const进行类型安全检查(所谓的类型安全检查,能将程序集间彼此隔离开来,这种隔离能确保程序集彼此间不会产生负面影响,提高程序的可读性);
2:有些集成化的调试工具可以对const常量进行调试,使编译器对处理内容有了更多的了解,消除了一些隐患。eg:void hanshu(const int i){.......}  编译器就会知道i是一个不允许被修改的常量
3:可以节省空间,避免不必要的内存分配,因为编译器通常不为const常量分配内存空间,而是将它保存在符号表中,这样就没有了存储于读内存的操作,使效率也得以提高;
4:可以很方便的进行参数的修改和调整,同时避免意义模糊的数字出现

使用特权

评论回复
沙发
AdaMaYun| | 2023-12-16 14:28 | 只看该作者
const来修饰,就意味着该变量里的数据只能被访问,而不能被修改

使用特权

评论回复
板凳
cr315| | 2023-12-18 10:22 | 只看该作者
C++中有哪些常见的保留关键字

使用特权

评论回复
地板
forgot| | 2023-12-18 11:30 | 只看该作者
用const来修饰,就意味着该变量里的数据只能被访问,而不能被修改,也就是意味着const“只读”

使用特权

评论回复
5
jf101| | 2023-12-19 09:37 | 只看该作者
被const修饰的东西,都受到强制保护

使用特权

评论回复
6
OKAKAKO| | 2023-12-19 10:23 | 只看该作者
const“只读”变量,不能进行修改的

使用特权

评论回复
7
小小蚂蚁举千斤| | 2023-12-19 10:47 | 只看该作者
const'使编译器保护那些不希望被修改的参数,防止无意代码的修改,减少bug;

使用特权

评论回复
8
小夏天的大西瓜| | 2023-12-20 16:49 | 只看该作者
被const修饰的东西,都受到强制保护

使用特权

评论回复
9
中国龙芯CDX|  楼主 | 2023-12-21 08:53 | 只看该作者
AdaMaYun 发表于 2023-12-16 14:28
const来修饰,就意味着该变量里的数据只能被访问,而不能被修改

确实是这样的,const基本就是用来固定特定值的

使用特权

评论回复
10
中国龙芯CDX|  楼主 | 2023-12-21 08:53 | 只看该作者
OKAKAKO 发表于 2023-12-19 10:23
const“只读”变量,不能进行修改的

使用特权

评论回复
11
中国龙芯CDX|  楼主 | 2023-12-21 08:53 | 只看该作者
小夏天的大西瓜 发表于 2023-12-20 16:49
被const修饰的东西,都受到强制保护

const基本就是用来固定特定值的

使用特权

评论回复
12
中国龙芯CDX|  楼主 | 2023-12-21 08:54 | 只看该作者
小小蚂蚁举千斤 发表于 2023-12-19 10:47
const'使编译器保护那些不希望被修改的参数,防止无意代码的修改,减少bug; ...

确实有利于减少bug

使用特权

评论回复
13
星辰大海不退缩| | 2023-12-21 12:42 | 只看该作者
const“只读”变量,不能进行修改的

使用特权

评论回复
14
szt1993| | 2023-12-21 19:59 | 只看该作者
const离谁近,谁就不能被修改

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

180

主题

1441

帖子

2

粉丝