타입인수에서 argument pack 버전이 작동돼지 않는데요. 어떻게 해야 하죠?

dltkddyd의 이미지

template<class... ARGS> sdeque(ARGS... args, const value_type& val);

저런 식의 생성자를 언급하고 컴파일하면

template argument deduction/substitution failed

라는 오류가 뜹니다.

클래스는 템플릿으로 다음과 같이 정의했고요.

template<class PTRTYPE>
class sdeque {
public:
  sdeque() {
    //statements
  }
  sdeque(const sdeque<PTRTYPE>& right) {
    //statements
  }
  sdeque(size_type _length, const value_type& val) {
    //statements
  }
  template<class... ARGS> sdeque(ARGS... args, const value_type& val=value_type()){
    //statements
  }
};

argument pack 버전에서 기본인수를 마지막에 언급하는 방식이 잘못됐기 때문에 그런가요? argument pack과 같이 마지막에 기본인수를 언급하는 방법은 없나요?

dltkddyd의 이미지

앞으로 빼는 수 밖에 없나보군요.

본인 맞습니다.
인증샷
우헤헤헤... 로 대신합니다.