반응형
    
    
    
  %w
%w는 주로 fmt.Errorf 함수에서 오류(wrapping errors)를 감쌀 때 사용됩니다.
Go 1.13에서 도입된 기능으로, 새로운 오류를 생성하면서 기존 오류를 감싸기(wrap) 위해 사용합니다.
%w는 fmt.Printf와 같은 함수에서 직접적으로 사용되지 않으며, 주로 fmt.Errorf와 함께 사용됩니다.
package main
import (
    "errors"
    "fmt"
)
func main() {
    originalErr := errors.New("original error")
    wrappedErr := fmt.Errorf("new context: %w", originalErr)
    fmt.Println(wrappedErr)  // new context: original error
    
    // 원래 오류를 감싸는지 확인
    if errors.Is(wrappedErr, originalErr) {
        fmt.Println("The wrapped error contains the original error")
    }
}
%w는 오류 감싸기(wrapping errors) 용도로 사용됩니다. fmt.Printf에서 %w는 직접 사용할 수 없고, fmt.Errorf와 함께 오류를 처리할 때 주로 사용됩니다.
반응형
    
    
    
  '프로그래밍 일반 > Go 프로그래밍' 카테고리의 다른 글
| GORM connection pool (0) | 2024.11.26 | 
|---|---|
| [go] golang의 가비지 콜렉터 (0) | 2024.11.13 | 
| [go] go-redis와 Redigo 비교 (0) | 2024.11.09 | 
| [go] %v와 %+v의 차이 (0) | 2024.11.08 | 
| [go] Context 활용하기 (0) | 2024.11.07 |