Golang中的一些编译逻辑坑
2019-12-06 本文已影响0人
Hmcf
2 ^ 15 == (0010 ^ 1111 = 1101)
^ 为异或,不是幂
2**3
math.Pow(2,3)
编译会报错,不同于python中的阶乘,求阶乘需要用math函数或者自己实现
func A(string string) string {
return string + string
}
func B(len int) int {
return len + len
}
func C(val, default string) string {
if val == "" {
return default
}
return val
}
以上三个函数中,只有最后一个会编译报错,因为使用了default关键了。string 和 len 是预定义标识符,可以在局部使用。nil 也可以当做变量使用,不过不建议写这样的代码!