>백엔드 개발 >Golang >Go ':=' 대 '=': 짧은 변수 선언을 언제 사용해야 할까요?

Go ':=' 대 '=': 짧은 변수 선언을 언제 사용해야 할까요?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-12-11 21:13:13405검색

Go

Go에서 ":="와 "="의 차이점 이해

Go 초보자로서 당황스러울 수도 있습니다. 변수 할당을 위해 ":="와 "="를 서로 바꿔서 사용할 수 있는 것처럼 보입니다. 그러나 변수 선언의 맥락을 중심으로 미묘한 차이가 있습니다.

"="

Go에서는 "="가 주로 사용됩니다. 변수 할당. 이는 "var name type = 표현식" 구문을 준수합니다. 여기서 "name"은 할당되는 변수를 나타냅니다. 결정적으로, 타입이나 대입식을 생략할 수 있지만 둘 다 생략할 수는 없습니다.

":="

의 성격에 비해 ":="는 짧은 것을 의미합니다. "name := 표현식" 형식을 따르는 변수 선언입니다. 여기서 ":="는 결합된 선언 및 할당 연산자 역할을 합니다. "이름"의 유형은 "표현식"의 유형에서 자동으로 유추됩니다.

선언과 대입의 구별

주요 차이점은 각각의 기본 목적에 있습니다. 연산자. ":="는 선언용으로만 사용되고 "="는 할당용으로 사용됩니다. 따라서 짧은 변수 선언은 항상 현재 어휘 블록 내에 완전히 새로운 변수를 하나 이상 도입해야 합니다.

사용 예

구별을 설명하려면 다음 예를 고려하세요. :

  1.   var x int = 1

    이 문은 정수 변수 "x"를 선언하고 값 1로 초기화합니다.

  2.   r := foo()

    새로 생성된 변수 "r"에 "foo()" 함수의 반환 값을 할당하는 짧은 변수 선언입니다.

This creates a new variable "m" and assigns a new value to the existing variable "r."

**Exceptions and Additional Information**

It's worth noting that ":=" can only be used within functions. However, it can declare temporary variables within the initializers of control structures like "if," "for," and "switch."

For further exploration, you can refer to the official Go documentation on:

* [Variable Declarations](https://go.dev/ref/spec#Variable_declarations)

위 내용은 Go ':=' 대 '=': 짧은 변수 선언을 언제 사용해야 할까요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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