형식 연역이 일어나는 경우는 다음의 경우입니다. C++98 : template만 존재 C++11 : auto, decltype 추가 C++14 : auto와 decltype를 사용할 수 있는 문맥 확장, decltype(auto) [C++] decltype 과 auto 참고해 주세요. 형식 연역의 범위가 증가한 덕분에 자명하거나 이미 언급된 형식들을 여러 번 일일이 지정해야하는 경우가 크게 줄었습니다. 코드의 한 곳만 수정하면 그 변화가 형식 연역을 통해 다른 장소들로 자동으로 전파됩니다. 그러나 코드의 의미를 추론하기는 좀 더 어려워졌습니다. 컴파일러가 연역하는 형식이 독자가 언뜻 보고 추측하는 것과 다른 경우가 있기 때문입니다. 형식 연역이 일어나는 방식을 확실히 이해해야야 효과적인 프로그래밍을 할 ..