瀏覽代碼

学习笔记备份提交

v1
SisMaker 5 年之前
父節點
當前提交
cd0d903a38
共有 2 個文件被更改,包括 41 次插入0 次删除
  1. +16
    -0
      src/docs/gomap.md
  2. +25
    -0
      src/learn/type.go

+ 16
- 0
src/docs/gomap.md 查看文件

@ -0,0 +1,16 @@
# KeyValue限制
Key一定要是是可比较类型(可以理解为支持 == 的操作)
非法类型的Key 如果是非法的key类型,会报错:invalid map key type xxx。
可比较类型 不可比较类型
boolean slice
numeric map
string func
pointer
channel
interface
包含前文类型的array和struct
# 函数传递
Golang中是没有引用传递的,均为值传递。这意味着传递的是数据的拷贝。
那么map本身是引用类型,作为形参或返回参数的时候,传递的是值的拷贝,而值是地址,扩容时也不会改变这个地址。

+ 25
- 0
src/learn/type.go 查看文件

@ -0,0 +1,25 @@
package main
import "fmt"
type test struct {
aa int
bb int
cc string
}
func main() {
var t interface{} = test{
1,
2,
"fdfss"}
switch p := t.(type) {
case test:
fmt.Printf("tetttttt %T %v \n", t, p)
default:
fmt.Printf("%v", p)
}
//fmt.Printf("***** %v \n", t)
}

Loading…
取消
儲存