toit - Toit 中的 := 和 ::= 有什么区别?
问题描述
我正在用 Toit 编写代码。:=
在 Toit 程序中,我可以使用或引入字段和本地人::=
。
main:
hello := "Hello"
log hello
world ::= "World"
log world
有什么区别?
解决方案
不同之处在于,它:=
引入了一个可以稍后修改的字段或局部变量(它是一个变量),而::=
引入了一个“最终”字段或局部变量,其值只设置了一次。
以下代码是合法的,并显示您更新了使用 引入的本地的值:=
:
main:
hello := "Hello"
hello = "Greetings"
log hello // Logs 'Greetings'
以下代码是非法的,表明您无法更新使用 引入的本地的值::=
:
main:
world ::= "World"
world = "Universe" // Error: Can't assign to final local
log world
推荐阅读
- node.js - 该合约对象尚未设置地址,请先设置地址
- python - 有没有更简单的方法来验证 python 中的用户输入而不重复 while 循环?
- c - 每个静态链接 C 运行时的库是否都有不同版本的运行时?
- javascript - Chart.js 数据最初未加载
- laravel - 在 Docker 上运行的 Laraver 8.40 在尝试通过 artisan 迁移时出现 MySQL 2002 错误
- javascript - 无法解决调用另一个方法的 Promise
- sql - AWS Timestream:不支持给定的相关子查询
- label - graphviz 标签的虚线下划线
- java - How synchronization works in Java when i use synchronized(this.local_datamember)?
- c - 如何找到像`pthread_t`这样的ac类型的定义?