>백엔드 개발 >Golang >함수 본문 외부로 이동에서 전역 변수를 어떻게 초기화합니까?

함수 본문 외부로 이동에서 전역 변수를 어떻게 초기화합니까?

Barbara Streisand
Barbara Streisand원래의
2024-11-13 08:20:02327검색

How do I Initialize Global Variables in Go Outside of Function Bodies?

Go에서 함수 본문 외부의 비선언문: 전역 변수 초기화 이해

JSON에서 데이터를 제공하는 API용 Go 라이브러리를 사용하는 경우 또는 XML 형식을 사용하는 경우 세션 ID를 안전하게 관리해야 합니다. 이를 위해 API 호출 중에 사용할 main() 함수 외부에 변수를 할당할 수 있습니다.

Go는 함수 본문 외부에서 변수를 선언할 때 특정 규칙을 따릅니다. :=를 사용하여 함수 내에서 변수를 선언하는 데 사용되는 구문은 전역 변수 초기화에 적합하지 않습니다. 대신 var 다음에 변수 이름과 해당 값을 사용해야 합니다.

예를 들어, 귀하의 경우 다음과 같이 "This is a test" 값을 사용하여 전역 변수 test를 선언할 수 있습니다.

package apitest

import (
    "fmt"
)

var test = "This is a test."

테스트에서 소문자 "t"는 패키지 내에서만 액세스할 수 있고 내보낼 수 없음을 나타냅니다.

이 접근 방식을 사용하면 패키지 내 어디에서나 테스트 변수에 액세스하고 수정할 수 있습니다.

다음 예를 고려하세요.

package main

import "fmt"

var test string = "Initial Test"

func main() {
    fmt.Println(test)      // Prints "Initial Test"
    changeTest("New Test")
    fmt.Println(test)      // Prints "New Test"
}

func changeTest(newTest string) {
    test = newTest
}

이 시나리오에서는 패키지 수준 변수 test가 "초기 테스트"로 초기화되어 있습니다. ." main() 함수 내에서 ChangeTest() 함수를 호출하여 "New Test"라는 새 값을 전달합니다. 이후에changeTest() 함수는 test 값을 업데이트합니다.

프로그램이 실행되면 다음이 출력됩니다.

Initial Test
New Test

이는 패키지 전체에서 전역 변수에 액세스하고 수정할 수 있음을 보여줍니다. API 통합에 필요한 세션 ID 또는 기타 데이터를 관리할 수 있습니다.

위 내용은 함수 본문 외부로 이동에서 전역 변수를 어떻게 초기화합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.