[go] 명령 실행 오류 처리
  1. 오류 처리 기본
  2. 고급 오류 처리

1. 오류 처리 기본

Go 언어에서 함수가 여러 값을 반환할 수 있기 때문에, 흔히 오류를 값으로 반환하는데, 이 값은 오류가 발생하지 않았을 때 nil이 됩니다. 가장 기본적인 오류 처리 방법은 다음과 같습니다.

func divide(x, y int) (int, error) {
    if y == 0 {
        return 0, errors.New("division by zero")
    }
    return x / y, nil
}

func main() {
    result, err := divide(6, 3)
    if err != nil {
        fmt.Println("오류 발생:", err)
    } else {
        fmt.Println("결과:", result)
    }
}

위의 예시에서 divide 함수는 두 개의 int와 하나의 error를 리턴합니다. 오류가 발생하지 않았을 때는 nil을 반환하고, 오류가 발생했을 때는 errors.New로 새로운 오류를 생성하여 반환합니다.

2. 고급 오류 처리

Go 1.13 버전부터는 errors 패키지가 표준 라이브러리에 추가되었습니다. fmt.Errorf 함수를 사용하여 더 유연하고 구조화된 오류를 생성할 수 있습니다.

import "fmt"

func divide(x, y int) (int, error) {
    if y == 0 {
        return 0, fmt.Errorf("division by zero")
    }
    return x / y, nil
}

func main() {
    result, err := divide(6, 3)
    if err != nil {
        fmt.Println("오류 발생:", err)
    } else {
        fmt.Println("결과:", result)
    }
}

fmt.Errorf를 사용하면 오류를 보다 자세히 설명할 수 있습니다.

오류를 처리하는 방법은 프로그램의 실제 요구에 따라 다를 수 있습니다. 고급 오류 처리를 통해 프로그램을 더욱 견고하게 만들 수 있습니다.

Go 언어의 오류 처리에 대해 더 자세히 알아보려면 아래 자료를 참고하세요.

이상으로 Go 언어의 명령 실행 오류 처리에 대해 알아보았습니다.