C++
Parameterpaket
Sök…
En mall med ett parameterpaket
template<class ... Types> struct Tuple {};
Ett parameterpaket är en mallparameter som accepterar noll eller fler mallargument. Om en mall har minst ett parameterpaket är en variadisk mall .
Utvidgning av ett parameterpaket
Mönstret parameter_pack ...
utökas till en lista med kommaseparerade ersättningar av parameter_pack
med var och en av dess parametrar
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
}
Koden ovan åberopas med variadic_printer(1, 2, 3, "hello");
grafik
1
2
3
hello
Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow