프로그래밍

[c++] typedef template<typename T> 템플릿 자료형의 이름 재정의 방법

제페 2014. 7. 2. 20:18
반응형

typedef template<size_t size> array<byte_type, size> buffer 이런걸 하고 싶었는데


typedef와 template가 겹쳐서 컴파일 에러가 났다.


템플릿을 사용하는 자료형(vector, array, list 등등..) 또는 컨테이너는 typedef로 재정의를 할 수 없을까?


검색해보니 나만 저런걸 하고 싶었던 건 아닌 듯... -_- 비슷한 유형의 글이 어마어마하게 검색이 되었다.


하.지.만. c++11에선 저런걸 할 수 있다. 


물론, 문법은 조금 다르지만!


template<size_t size> using buffer_type = std::array<byte_type, size>;


/// ...


buffer_type<128> buffer; // 길이 128의 바이트 타입 배열(버퍼)


템플릿<템플릿인자> using 원하는타입명 = 자료형<템플릿인자>; 


이와 같이 하면 된다. 굳. 



반응형