找回密码
 注册
关于网站域名变更的通知
查看: 284|回复: 2
打印 上一主题 下一主题

变量和常量之间的差异

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2021-10-8 11:15 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
无法更改变量的值可能会让您想起大多数其他语言都有的另一个编程概念:常量。与不可变变量一样,常量是绑定到名称且不允许更改的值,但常量和变量之间存在一些差异。
首先,您不能mut与常量一起使用。默认情况下,常量不仅仅是不可变的——它们总是不可变的。
您使用const关键字而不是关键字来声明常量let,并且必须注释值的类型。我们将在下一节“数据类型”中介绍类型和类型注释所以现在不要担心细节。只要知道您必须始终注释类型。
常量可以在任何范围内声明,包括全局范围,这使得它们对于代码的许多部分需要了解的值非常有用。
最后一个区别是常量只能设置为常量表达式,而不是函数调用的结果或任何其他只能在运行时计算的值。
下面是一个常量声明的示例,其中常量的名称是 MAX_POINTS,其值设置为 100,000。(Rust 对常量的命名约定是在单词之间使用全大写和下划线,并且可以在数字文字中插入下划线以提高可读性):
const MAX_POINTS: u32 = 100_000;
常量在程序运行的整个过程中都有效,在它们声明的范围内,使它们成为应用程序域中程序的多个部分可能需要了解的值的有用选择,例如任意点的最大数量一个游戏的玩家被允许赚取或光速。
将整个程序中使用的硬编码值命名为常量有助于将该值的含义传达给代码的未来维护者。如果将来需要更新硬编码值,那么在您的代码中只需要更改一个位置也很有帮助。
) D1 e5 L' f0 k& h3 |

  ~* L+ X$ u8 U7 F4 E! B+ p; A) o& I  ]4 z) T. |# m: ~2 z
3 b* n5 ~) y9 e' m1 L* _# r. v

该用户从未签到

2#
发表于 2021-10-8 13:06 | 只看该作者
常量可以在任何范围内声明

该用户从未签到

3#
发表于 2021-10-8 14:21 | 只看该作者
常量只能设置为常量表达式,而不是函数调用的结果或任何其他只能在运行时计算的值。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-6-21 11:37 , Processed in 0.093750 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表