முக்கிய உள்ளடக்கத்திற்குச் செல்லவும்
தொகுதி 1 · பாடம் 1 இன் 5பாடத்திட்டத்தில் 1/50~10 min
தொகுதி பாடங்கள் (1/5)

மாறிகள் மற்றும் வகைகள்

கோவில் ஒவ்வொரு மாறியிலும் நிலையான வகை கம்பைலருக்குத் தெரியும்: ஒருமுறை அறிவிக்கப்பட்டது, ஒரு மாறி வகையை மாற்ற முடியாது. இந்த விறைப்பு - மிகவும் வித்தியாசமானது ஜாவாஸ்கிரிப்ட் அல்லது பைதான் - தொகுக்கும் நேரத்தைப் பெற நீங்கள் செலுத்தும் விலை இயக்க நேரத்துக்குப் பதிலாக பிழைகள், சிறிய பைனரிகள் மற்றும் யூகிக்கக்கூடியவை செயல்திறன்.

பிரகடனத்தின் இரண்டு வடிவங்கள்

var வெளிப்படையான வகையுடன்

Go
var name string = "Ada"
var age int = 36
var active bool

நீங்கள் மதிப்பைத் தவிர்க்கும்போது (var active bool போல) மாறி பெறுகிறது அதன் வகையின் பூஜ்ஜிய மதிப்பு - அடுத்த பாடத்தில் இதற்கு வருவோம்.

குறுகிய அறிவிப்பு :=

ஒரு செயல்பாட்டின் உள்ளே நீங்கள் := ஐப் பயன்படுத்தலாம், இது வகையை ஊகிக்கிறது வலதுபுறத்தில் வெளிப்பாடு. இது idiomatic வடிவம் மற்றும் நீங்கள் பயன்படுத்தும் ஒன்றாகும் 90% நேரம்:

Go
name := "Ada"   // string
age := 36        // int
pi := 3.14       // float64
active := true   // bool

நீங்கள் உடனடியாக சந்திக்கும் அடிப்படை வகைகள்

வகைஉதாரணம்குறிப்புகள்
int42அளவு CPU (32 அல்லது 64 பிட்)
float643.14தசம எழுத்துகளுக்கு இயல்புநிலை
string"Ada"UTF-8, மாறாத
booltrue, false"உண்மை" இல்லை, தூய பூல் மட்டுமே
rune'A'int32 இன் மாற்றுப்பெயர், யூனிகோட் குறியீட்டுப் புள்ளியைக் குறிக்கிறது
byte0x7Fuint8

int8/16/32/64, uint8/16/32/64, float32 மற்றும் complex64/128 ஆகியவையும் உள்ளன உங்களுக்கு துல்லியமான அளவுகள் தேவைப்படும் போது (பைனரி பாகுபடுத்துதல், இண்டெராப் போன்றவை).

பல அறிவிப்புகள்

நீங்கள் var-பிளாக் அல்லது பன்மை := மூலம் பல மாறிகளை அறிவிக்கலாம்:

Go
var (
    name   string = "Ada"
    age    int    = 36
    active bool
)

x, y := 10, 20
a, b, c := "a", 2, true   // different types: no problem

மாறிகள் அறிவிக்கப்பட்டன ஆனால் பயன்படுத்தப்படவில்லை

Go என்பது கண்டிப்பானது: அறிவிக்கப்பட்ட மற்றும் பயன்படுத்தப்படாத ஒரு மாறி என்பது ஒரு தொகுப்பு ஆகும் பிழை, எச்சரிக்கை அல்ல. பயன்படுத்தப்படாத importsக்கும் இது பொருந்தும்.

Go
func main() {
    x := 42
    // error: x declared and not used
}

விதியை தற்காலிகமாக அமைதிப்படுத்த நீங்கள் _ (வெற்று அடையாளங்காட்டி) பயன்படுத்துகிறீர்கள்:

Go
_ = x

உங்கள் முறை

உடற்பயிற்சி#go.m1.l1.e1
முயற்சிகள்: 0ஏற்றுகிறது…

'Ada' மதிப்புடன் வகை சரத்தின் மாறி பெயரை அறிவிக்க var ஐப் பயன்படுத்தவும் மற்றும் அதை அச்சிடவும்.

எடிட்டரை ஏற்றுகிறது…
குறிப்பைக் காட்டு

நீண்ட வடிவம் `var <name> <type> = <value>`.

3 முயற்சிகளுக்குப் பிறகு தீர்வு கிடைக்கும்

உடற்பயிற்சி#go.m1.l1.e2
முயற்சிகள்: 0ஏற்றுகிறது…

ஒற்றை வரியில், வயதுக்கு 36ஐயும், நகரத்திற்கு 'ரோமா'வையும் ஒதுக்க := ஐப் பயன்படுத்தவும், பின்னர் இரண்டையும் அச்சிடவும்.

எடிட்டரை ஏற்றுகிறது…
குறிப்பைக் காட்டு

நீங்கள் ஒரே நேரத்தில் பல மாறிகளை ஒதுக்கலாம்: `a, b := 1, "dee"`.

3 முயற்சிகளுக்குப் பிறகு தீர்வு கிடைக்கும்

Quiz#go.m1.l1.e3
தயார்

இந்த அறிவிப்புகளில் எது ஒரு செயல்பாட்டிற்கு வெளியே இருந்தால் தொகுத்தல் பிழையை உருவாக்கும்?

Go
// (a)
var name string = "Ada"

// (b)
age := 36

// (c)
const PI = 3.14
பதில் விருப்பங்கள்

மறுபரிசீலனை

  • நிலையான வகை, தானாகவே := ஆல் ஊகிக்கப்பட்டது அல்லது var உடன் அறிவிக்கப்பட்டது.
  • := செயல்பாடுகளுக்குள் மட்டும்; தொகுப்பு மட்டத்தில் மட்டுமே var/const.
  • பயன்படுத்தப்படாத மாறிகள் மற்றும் இறக்குமதிகள் = தொகுத்தல் பிழை: அவற்றை அமைதிப்படுத்த _ ஐப் பயன்படுத்தவும்.
  • int/float64/string/bool தினசரி வழக்குகளில் 90%.