initialization choices

초기화 문법은 손실 변환을 얼마나 막는지가 다르다

값이 처음 확정되는 순간을 명확히 만들수록 읽기 전 쓰레기 값과 의도치 않은 타입 변환을 줄일 수 있습니다.

방식
문법
읽는 법
주의점
복사 초기화
int age = 20;
오른쪽 값을 왼쪽 변수의 초기값으로 둔다.
익숙하지만 좁아지는 변환을 놓치기 쉽다.
직접 초기화
int age{20};
생성자 호출처럼 값을 직접 전달한다.
기본 타입에서는 복사 초기화와 차이가 작다.
중괄호 초기화
int age{20};
타입에 맞는 값을 명시적으로 넣는다.
narrowing 차단 int x{3.14};는 컴파일 오류
값 초기화
int count{};
타입의 기본값으로 시작한다.
정수는 0, bool은 false처럼 안전한 시작값을 둔다.
초보 단계에서는 `{}`를 기본 선택으로 두면 읽기 전 사용과 손실 변환을 동시에 줄일 수 있다.