본문 바로가기

프로그래밍 언어 노트/C++ | Modern C++

[모던 C++] 킹갓 auto 와 decltype

    auto i = 10;
    decltype(i) j = 10;

auto는 자동으로 형추론을 한다

decltype은 declared type의약자로 ()안에 들어간 녀석의 형식을 나타낸다.


template<typename T1, typename T2>
auto Test(T1 a, T2 b)->decltype(a + b) {
    return a + b;
}

리턴으로 auto는 가능하나 후행 타입형식을 지정해주어야한다.

템플릿의 경우  decltype을 이용하여 후행타입을 정해주면 기가막히게 사용할수있다.


728x90