수색…


매개 변수 팩이있는 템플릿

template<class ... Types> struct Tuple {};

매개 변수 팩은 0 개 이상의 템플릿 인수를 허용하는 템플릿 매개 변수입니다. 템플릿에 하나 이상의 매개 변수 팩이있는 경우 가변 템플릿 입니다.

매개 변수 팩 확장

parameter_pack ... 패턴은 각 parameter_pack 와 함께 parameter_pack 의 쉼표로 구분 된 대체 목록으로 확장됩니다

template<class T> // Base of recursion
void variadic_printer(T last_argument) {
    std::cout << last_argument;
}

template<class T, class ...Args> 
void variadic_printer(T first_argument, Args... other_arguments) {
  std::cout << first_argument << "\n";
  variadic_printer(other_arguments...); // Parameter pack expansion
}

위의 코드는 variadic_printer(1, 2, 3, "hello"); 와 함께 호출됩니다 variadic_printer(1, 2, 3, "hello"); 인쇄물

1
2
3
hello


Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow