2017-12-12 3 views
3

이 코드를 고쳐?

+1

'class derived : public base ' – Jodocus

+0

'base' 클래스 (또는 해당 파생 클래스)에서 매개 변수 팩을 어떻게 확장합니까? 너 그런 식으로 해봤 니? –

+0

@Someprogrammerdude 데이터가 압축 해제 된 방법을 보여주는 코드를 추가하십시오. – mans

답변

2

여러 템플릿 매개 변수 (유형 또는 비 유형) 팩으로 전달 될 수 없지만 때마다 압축을 풀 수있다 :

template<char ...T> 
class base { } 

template<char ...T> 
class derived: public base<T...> // unpack 
{  
} 

base<>의 내부 매개 변수가 다음 T의 맥락에서 재 포장됩니다

2

T은 하나의 유형이 아니며 "매개 변수 팩"의 이름입니다.

base<T>은 무의미합니다. base에는 유형 목록이 아닌 유형 목록이 필요하기 때문입니다. base<T...>은 형식을 풀고 예상대로 작동합니다.