Sobes.tech
Junior — Middle

Можете ли да обясните предназначението на функцията init() в контекста на програмирането?

sobes.tech AI

Отговор от AI

В езика Go функцията init() се използва за инициализация на пакет преди изпълнението на основната програма. Тя се извиква автоматично веднъж при зареждане на пакета, преди извикването на функцията main().

Цел на init():

  • Инициализация на променливи, константи или структури, които изискват сложна логика.
  • Настройка на състоянието на пакета, например регистрация на обработчици или свързване с ресурси.

Пример:

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)
}

Изходът ще бъде:

init called
main called
config: initialized

По този начин init() помага да се подготви околната среда преди да започне основната логика на програмата.