Sobes.tech
Junior — Middle

Ar galite paaiškinti funkcijos init() paskirtį programavimo kontekste?

sobes.tech AI

Atsakymas iš AI

Go kalboje funkcija init() naudojama paketui inicializuoti prieš pagrindinės programos vykdymą. Ji automatiškai iškviečiama vieną kartą paketo įkėlimo metu, prieš kviečiant main() funkciją.

init() tikslas:

  • Inicializuoti kintamuosius, konstantas ar struktūras, kurioms reikalinga sudėtinga logika.
  • Nustatyti paketo būseną, pvz., registruoti tvarkykles arba jungtis prie išteklių.

Pavyzdys:

package main

import "fmt"

var config string

func init() {
    config = "initialized"
    fmt.Println("init called")
}

func main() {
    fmt.Println("main called")
    fmt.Println("config:", config)
}

Išeiga bus:

init called
main called
config: initialized

Taip init() padeda paruošti aplinką prieš pradedant pagrindinę programos logiką.