ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Golang] if문에 세미콜론(;) 의미
    언어/Golang 2017. 2. 2. 20:22

    아래의 두 예제는 같은 의미입니다.

    1.

    if v, err := Read(); err == nil {
    	// do something with v, because Read() did not
    	// had an error (err)
    }

    2.

    v, err := Read()
    if err == nil {
    	// do something with v
    }


    두 문법의 결과는 같지만 차이점은 첫 번째 예제에서는 v와 err의 범위는 if {}블록으로 제한됩니다. 두 번째 예제에서는 v와err은 선언된 블록에 속해 있습니다. 즉, if {}에 속해있지 않다는 뜻입니다. {}블록에서 ;을 사용하는 것과 거의 같습니다.

    if문에 ;을 사용할 땐, 선언되는 변수가 조건문 안에서만 사용된다고 확실시 될 때 사용하면 좋습니다.

    댓글