auto deduction
auto는 초기화 식과 선언 형태를 함께 읽는다
오른쪽 값이 후보 타입을 만들고, 왼쪽의 &, const, &&가 최종 형태를 조정한다.
auto x값을 복사하고 top-level const는 떨어진다
auto& x원본을 참조하고 const까지 보존한다
const auto& x복사 없이 읽기 전용으로 묶는다
auto&& x값 범주를 보존하는 전달 경계가 된다
| 선언 | 읽는 방식 | 결과 |
|---|---|---|
| auto a = n | 초기화 식에서 값 타입만 추론 | int 복사본 |
| auto& r = c | 참조 선언이 원본 성질을 요구 | const int& |
| auto&& f = expr | lvalue/rvalue 범주까지 유지 | 전달용 참조 |
핵심 auto의 결과는 “오른쪽 값 + 왼쪽 선언 형태”를 함께 봐야 안전하게 읽힌다.