[c++] 자동 타입 추론 (auto)

C++11부터 사용할 수 있는 auto 키워드는 변수의 타입을 자동으로 추론하는 기능을 제공합니다. 이를 통해 코드의 가독성을 높이고 불필요한 반복된 타입을 지정하는 작업을 줄일 수 있습니다.

기본 사용법

auto 키워드는 변수를 선언할 때 사용됩니다. 예를 들어, 다음과 같이 사용할 수 있습니다.

auto num = 10; // num 변수의 타입은 int로 추론
auto name = "John"; // name 변수의 타입은 const char*로 추론

활용 예시

auto 키워드는 복잡한 타입을 단순화하는 데 유용합니다. 컨테이너 클래스나 반복자를 사용하는 경우에 특히 편리하게 사용할 수 있습니다.

std::vector<int> numbers = {1, 2, 3, 4, 5};
for (auto it = numbers.begin(); it != numbers.end(); ++it) {
    // it의 타입은 std::vector<int>::iterator로 추론됨
    std::cout << *it << " ";
}

제약사항

auto를 사용할 때는 초기화 과정에서 변수의 타입이 명확해야 합니다. 또한 타입 추론 과정에서 예기치 않은 결과를 초래할 수 있는 코드는 피해야 합니다.

자동 타입 추론은 코드를 간결하게 만들어 주지만, 오랜 기간 변수를 추적하거나 코드를 유지보수하는 데 어려움을 줄 수 있으므로 신중하게 사용해야 합니다.

결론

auto 키워드는 C++에서 타입을 추론하는 강력한 도구입니다. 올바르게 활용하면 코드의 가독성을 높이고 반복되는 복잡한 타입을 일일이 명시하는 수고를 덜 수 있습니다.

이상으로 C++에서의 자동 타입 추론에 대한 내용을 마치도록 하겠습니다.

참고 문헌: cplusplus.com