一、变量
- 1、函数内的变量,声明后必须使用否则报错;包内变量,生命后可以不使用。
- 2、var 什么时候要使用,什么时候可以不使用
- 函数内可以使用:=,此时省略var关键字,且只有这种情况可以省略关键字var;
- 函数外必须使用var/function等关键字,不可使用:=形式。
- 3、函数内不同类型变量能够同时进行初始化。
c, python, java := true, false, "no!"
var c, python, java = true, false, "no!"
var a bool, b int
a, b := false, 0
var a, b = false, 0
var a bool
var b int
package main
import (
"fmt"
"math/cmplx"
)
var (
ToBe bool = false
MaxInt uint64 = 1<<64 - 1
z complex128 = cmplx.Sqrt(-5 + 12i)
)
func main() {
fmt.Printf("Type: %T Value: %v\n", ToBe, ToBe)
fmt.Printf("Type: %T Value: %v\n", MaxInt, MaxInt)
fmt.Printf("Type: %T Value: %v\n", z, z)
}
- 6、变量声明后系统会赋初值,也就是不存在没有初始化的变量
package main
import "fmt"
func main() {
var i int
var f float64
var b bool
var s string
fmt.Printf("%v %v %v %q\n", i, f, b, s)
}
- 7、常数:可以是bool、string或者数字。不可以使用:=进行初始化。
资料:
https://www.cnblogs.com/chengshan/p/16215428.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通