2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
$GOPATH/pkg/mod
Alas$GOPATH/bin
AlasGo-muuttujien, vakioiden, mukautettujen tyyppien, pakettien ja funktioiden nimeämisen on noudatettava seuraavia sääntöjä:
Ensimmäinen hahmo voi olla任意Unicode字符
tai下划线
Muut osat kuin ensimmäinen merkki voivat olla Unicode-merkkejä, alaviivoja tai numeroita
Nimen pituutta ei ole rajoitettu
Teoriassa nimessä voi olla kiinalaisia merkkejä tai jopa kaikkia kiinalaisia merkkejä, mutta käytännössä älä tee tätä.
tauko | oletuksena | func | käyttöliittymä | valitse |
---|---|---|---|---|
tapaus | lykätä | mennä | kartta | struct |
chan | muu | mene | paketti | vaihtaa |
konst | jos | alue | tyyppi | jatkaa |
varten | tuonti | palata | putoaminen | var |
•vakio
true
false
iota
nil
• tietotyyppi
int
int8
int16
int32
int64
uint
uint8
uint16
uint32
uint64
float32
float64
complex128
complex64
byte
rune
string
bool
error
uintptr
•toiminto
make
len
cap
new
append
copy
close
delete
complex
real
imag
panic
recover
tyyppi | Siirry muuttuviin tyyppeihin | fmt lähtö |
---|---|---|
kokonaisluku | int int8 int16 int32 int64 uint uint8 uint16 uint32 uint64 | %d |
liukuluku | float32 float64 | %f %e %g |
monikko | complex128 complex64 | %v |
boolean | bool | %t |
osoitin | uintptr | %d |
Lainata | map slice channel | %v |
tavu | byte | %d |
mikä tahansa hahmo | rune | %d |
merkkijono | string | %s |
virhe | error | %v |
Jos sitä ei ole nimenomaisesti alustettu ilmoituksen jälkeen, numeerinen tyyppi alustetaan O:ksi, merkkijonotyyppi tyhjäksi merkkijonoksi ja Boolen tyyppi alustetaan epätosi.
Viitetyypit, funktiot, osoittimet ja rajapinnat alustetaan nollaan
Funktioiden sisällä olevat muuttujat (ei-globaalit muuttujat) voidaan ilmoittaa ja alustaa: =
Alaviiva tarkoittaa anonyymiä muuttujaa
Anonyymit muuttujat eivät vie nimiavaruutta eivätkä varaa muistia, joten niitä voidaan käyttää uudelleen
Vakioille on annettava arvo, kun niitä määritellään, eikä niiden arvoa voi muuttaa ohjelman ollessa käynnissä.
const PI float32=3.14
const(
PI=3.14
E=2.71
)
const(
a=100
b //100,跟上一行的值相同
c //100,跟上一行的值相同
)
const(
a = iota //0
b //1
c //2
d //3
)
const(
a = iota //0
b //1
_ //2
d //3
)
const(
a = iota //0
b = 30 //30
c = iota //2
d //3
)
Kirjaimellinen: Muuttujan nimi ei näy, mutta arvo näkyy suoraan.Perustyyppien literaalit vastaavat vakioita
Eri tietotyyppejä ei voida verrata, lukuun ottamatta literaaleja
fmt.Printf("9tn", 04 ==4.00) //用到了整型字面量和浮点型字面量
fmt.Printf("%vn",.4i) //虚数字面量0.4i
fmt.Printf("%tn", "u4f17'=='众 //Unicode和rune字面量
fmt.Printf("Hello nWorldn!n") //字符串字面量
var (
A=3 //全局变量,大写字母开头,所有地方都可以访问,跨package访问时需要带上package名称
b=4 //全局变量,小写字母开头,本package内都可以访问
)
func fool{
b:=5 //局部变量,仅本函数内可以访问。内部声明的变量可以跟外部声明的变量有冲突,以内部的为准
{
b:=6 //仅小圈定的作用域内可以访问,可以跟外部的变量有冲突
}
}
Paketin kommentit. Paketin yläpuolella xxx. Paketti tarvitsee vain kirjoittaa paketin kommentit yhteen paikkaan, yleensä omaan doc.go-tiedostoon.
Paketissa on vain yksi rivi pakettixxx ja kommentit.
Rakennekommentit.edellä tyyppi xxx struct
Toimintojen kommentit.funktion yläpuolella xxx()
Rivien kommentit.rivin yläpuolella tai oikealla puolella