본문 바로가기

Go/[Go]Grammar

Go Template

Go 언어의 템플릿은 다음과 같습니다.

  1. 문자열
  2. 부울
  3. 숫자
  4. Type
  5. 변수

필자는 다른 언어들과는 다른 Go언어의 특징을 작성하도록 하겠습니다.

 

  • 룬(rune)
    단일 문자를 표현하기 위해 사용되는 것입니다. 마치 C언어의 아스키코드와 비슷하게 동작하는 것이라고 생각하면 됩니다.

    unicode 순번표를 나타내기 위한 자료형이라고 생각하면 됩니다.
    이해를 돕기 위해 간단하게 설명드리자면, 아스키코드가 영어만을 고려해서 1Byte로 만들었다면 Unicode는 4Byte로 훨씬 넓은 범용성을 제공한다고 생각하시면 쉽습니다. 또한, 아스키코드의 하위호환성을 유지시켜주기 때문에 C/C++에서 아스키코드표의 값을 고려하여 코딩하였던 것과 동일하게 동작합니다.

  • 변수
    Go언어에서 변수를 선언하는 방법은 두 가지로 나뉩니다. 이때 선언과 동시에 값을 할당하는 경우에는 변수의 Type을 생략하며 할당한 값의 타입으로 자동으로 추정하게 됩니다.
    • var one int = 1
    • one := 1 (단축 변수 선언)
  • Type
    C/C++은 아래와 같이 코드를 작성하더라도 컴파일 에러가 발생하지 않습니다.

    int a = 1;
    double b = 4.2;
    b = a;

    그러나, Go 언어는 Type이 일치하지 않는 것에 값을 할당할 수 없습니다. 따라서 반드시 Type Conversion을 통해 Type을 동일하게 맞추어야 합니다.

    var a int = 1
    var b float64 = 4.2
    b = float64(a)

 

'Go > [Go]Grammar' 카테고리의 다른 글

*_test.go 파일  (0) 2021.11.17
Go 컴파일  (0) 2021.11.16
Go Basic Format  (0) 2021.11.16