Mau*_*cio 2 compiler-construction language-design go
所以我在Go语言上看这个视频 - https://www.youtube.com/watch?v=p9VUCp98ay4,并且在6:50左右,一个人问一个关于为什么他们实现的问题,如果是语句而不是表达式.这两个实现有什么区别?据我所知,我从来没有必要改变我使用基于语言的条件的方式.
编辑:他的问题是什么意思是"你需要价值而不是变数"?
sep*_*p2k 10
表达式和语句之间的区别在于表达式生成一个值,因此可以在需要值的位置使用.因此,表达式可以用作变量的值,函数的参数或运算符的操作数.声明不能.
他的问题是什么意思"你需要价值而不是变数"?
我假设通过vals他意味着常量(val例如在Scala 中称为s).
如果if是表达式,您可以这样做:
const myValue = if condition { value1 } else { value2 }
Run Code Online (Sandbox Code Playgroud)
事实上,你必须这样做:
var myValue
if condition {
myValue = value1
} else {
myValue = value2
}
Run Code Online (Sandbox Code Playgroud)
因此,您需要使变量变为可变(使用var而不是const),这就是提出问题的人可能意味着什么.
| 归档时间: |
|
| 查看次数: |
583 次 |
| 最近记录: |