c++可变参数模板怎么用
时间: 2024-06-10 18:01:06 浏览: 172
C++可变参数的实现方法
C++11引入了可变参数模板,可以方便地处理不定数量的参数。使用可变参数模板需要使用模板参数包和函数参数包。
下面是一个简单的例子,实现了对任意数量的参数求和:
```c++
template<typename... Args>
auto sum(Args... args) {
return (args + ...);
}
```
在这个例子中,`Args`是一个模板参数包,`args`是一个函数参数包。`...`表示展开参数包,`(args + ...)`表示将所有参数相加。
使用时可以传入任意数量的参数:
```c++
int s1 = sum(1, 2, 3, 4, 5); // s1 = 15
double s2 = sum(1.1, 2.2, 3.3); // s2 = 6.6
```
阅读全文