<initializer_list>
时间: 2024-06-02 07:06:46 浏览: 17
<initializer_list>是C++11中的一个类,它允许我们通过构造函数来传递任意数量的参数。使用initializer_list参数的函数可以接受花括号括起来的任意数量的同类型参数,这使得参数数量变得非常灵活。下面是一个<initializer_list>的例子:
```c++
#include <iostream>
#include <initializer_list>
using namespace std;
double average(initializer_list<double> nums){
double sum = 0;
for(auto p=nums.begin(); p!=nums.end(); ++p){
sum += *p;
}
return sum/nums.size();
}
int main(){
cout << average({1,2,3}) << endl; // 输出:2
cout << average({3.3, 4.4, 6.6, 7.7}) << endl; // 输出:5.5
cout << average({}) << endl; // 输出:nan,当nums为空时,会除以0
return 0;
}
```
上述代码声明了一个名为average的函数,该函数接受一个<initializer_list>类型的参数nums,并计算其平均值。在main函数中,我们分别传递了三个不同的initializer_list参数,并打印其平均值。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)