Konstantalar
Konstantalar — bir marta belgilangach o’zgarmaydigan qiymatlar. const kalit so’zi bilan e’lon qilinadi.
Oddiy konstanta
const s string = "constant"Konstanta bir marta e’lon qilingandan keyin uni o’zgartirib bo’lmaydi.
Raqamli konstantalar
Raqamli konstantalarning bir qiziq jihati bor — ular ishlatilgunga qadar aniq turga ega bo’lmaydi:
const n = 500000000 // Bu hali int yoki float emasTuri faqat qayerda ishlatilsa, o’sha yerda aniqlanadi:
fmt.Println(int64(n)) // Bu yerda int64 bo'ldi
fmt.Println(math.Sin(n)) // Bu yerda float64 bo'ldiBuning nima keragi bor? Katta sonlar bilan ishlaganda aniqlik yo’qolmasligi uchun. Konstantalar hisob-kitobni juda yuqori aniqlikda bajaradi:
const d = 3e20 / n // Juda katta son, lekin xatolik yo'qTo’liq misol
constants.go
package main
import (
"fmt"
"math"
)
const s string = "constant"
func main() {
fmt.Println(s)
const n = 500000000
const d = 3e20 / n
fmt.Println(d)
fmt.Println(int64(d))
fmt.Println(math.Sin(n))
}Natija:
$ go run constants.go
constant
6e+11
600000000000
-0.28470407323754404Last updated on