?는 Ok를 풀고 Err를 현재 함수에서 조기 반환한다
Result를 받는 함수에서 ?를 붙이면 성공 값은 계속 쓰고, 실패는 From 변환을 거쳐 즉시 반환된다.
Result 반환
다음 코드 진행
현재 함수에서 return
전파된 Result 확인
| 구분 | 의미 | 판단 |
|---|---|---|
| Ok | 내부 값 사용 | 코드가 납작해짐 |
| Err | 조기 반환 | 중첩 match 감소 |
| 전제 | 함수도 Result/Option 반환 | ? 사용 가능 |
핵심 ? 연산자는 에러를 숨기는 것이 아니라 “여기서 처리하지 않고 호출자에게 넘긴다”는 표시다.