2013-06-13 2 views
6

나는 Modern C++ Design을 통해 읽고 있으며, typelist 구조가 가변적 인 템플릿으로 대체 될 수 있다는 생각이 들었다. 둘 다 목록의 첫 번째 유형과 목록의 나머지 부분을 별도로 처리하기 위해 재귀에 의존하는 것 같습니다. 타입리스트가 variadic 템플릿이하지 못하게 할 수있는 것이 있습니까?타입리스트가 가변적 인 템플릿으로 완전히 대체 되었습니까?

답변

8

유형 목록을 사용하면 몇 가지 사항을 알 수 있습니다. 예를 들어, metafunction의 결과로 가변 인수 팩을 가질 수 없습니다 - 같은 것을 표현하는 단지 방법이 없습니다 :

template <typename... Args> 
struct argpack_id { 
    typedef Args result; 
}; 

당신은 typelists하여이 작업을 수행 할 수는.

한편

, 당신은 아마

template <typename... Args> 
struct TypeList {}; 
로 typelist 자체를 구현해야합니다
관련 문제