Este site funciona melhor com JavaScript.
Página inicial
Explorar
Ajuda
Cadastrar
Acessar
SisMaker
/
goUtils
Observar
1
Favorito
0
Fork
0
Código
Issues
0
Pull requests
0
Projects
0
Versões
0
Wiki
Atividade
Ver código fonte
学习笔记备份提交
v1
SisMaker
5 anos atrás
pai
5bcc6a7c28
commit
cd0d903a38
2 arquivos alterados
com
41 adições
e
0 exclusões
Visão dividida
Opções de diferenças
Mostrar estatísticas
Baixar arquivo de patch
Baixar arquivo de diferenças
+16
-0
src/docs/gomap.md
+25
-0
src/learn/type.go
+ 16
- 0
src/docs/gomap.md
Ver arquivo
@ -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
Ver arquivo
@ -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)
}
Escrever
Pré-visualização
Carregando…
Cancelar
Salvar