Programming/golang

golang Init()

구차니 2026. 8. 20. 18:48

모듈에 init() 만들어 두면 일종의 constructor 처럼 자동으로 실행이 되는데

리턴도 없고 그래서 이래저래 제약이 있는 기능이라고 한다.

[링크 :  https://ray5273.tistory.com/entry/Golang-init-사용법-및-주의-사항]

 

func init() {
    if user == "" {
        log.Fatal("$USER not set")
    }
    if home == "" {
        home = "/home/" + user
    }
    if gopath == "" {
        gopath = home + "/go"
    }
    // gopath may be overridden by --gopath flag on command line.
    flag.StringVar(&gopath, "gopath", gopath, "override default GOPATH")
}

[링크 : https://go.dev/doc/effective_go#init]