Bu web sitesi JavaScript ile daha iyi çalışır.
Ana Sayfa
Keşfet
Yardım
Üye Ol
Giriş Yap
SisMaker
/
goUtils
İzle
1
Yıldızla
0
Çatalla
0
Kod
Konular
0
Değişiklik İstekleri
0
Projeler
0
Sürümler
0
Wiki
Aktivite
Kaynağa Gözat
学习笔记备份提交
v1
SisMaker
5 yıl önce
ebeveyn
5bcc6a7c28
işleme
cd0d903a38
2 değiştirilmiş dosya
ile
41 ekleme
ve
0 silme
Görünümü Böl
Diff Seçenekleri
İstatistikleri Göster
Yama Dosyasını İndir
Diff Dosyasını İndir
+16
-0
src/docs/gomap.md
+25
-0
src/learn/type.go
+ 16
- 0
src/docs/gomap.md
Dosyayı Görüntüle
@ -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
Dosyayı Görüntüle
@ -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)
}
Yaz
Önizleme
Yükleniyor…
İptal
Kaydet