变量
var name [:string] = “小明”
name2 := "小红"
* string 类型变量自身不可变 *
错误类型: err := errors.New("xxxxxxx");
err != nil
数组
var arr [10]int
arr2 := [2]int{1, 2}
arr3 := [...]int{4, 5, 6}
slice := []int {1, 2, 3}
dict := map[string]float32{"v1":1.0, "v2":1.1}
item, ok := dict["v2"]
OOP
类转变为 struct
同样也有 interface
接口也比较奇怪,就当它是约定配置吧
说什么,实现了接口的所有方法,就代表实现了该接口
总之,它是那么说的
指针
之前听说 C
里面的指针很难
今天看了下 Golang
的
一股引用传值的即视感...
交叉编译
系统类型(GOOS): mac -> darwin
、bsd -> freebsd
、linux
、windows
机器架构:(GOARCH): 386
、amd64
、arm
// 树莓派是 arm 架构的, 所以要用第二条语句
// CGO 技术让 Go 和和 C 交互, 不支持交叉编译
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build main.go
CGO_ENABLED=0 GOOS=arm GOARCH=arm go build main.go
其他
需要 IDE
否则,你根本不知道某个东西从哪里来的