当前位置: 首页 > news >正文

C++中的initializer_list类

目录

initializer_list类

介绍

基本使用

常见函数


initializer_list类

介绍

initializer_list类是C++11新增的类,其原型如下:

template<class T> class initializer_list;

有了initializer_list,一些容器也可以实现列表初始化,例如vector中的构造函数:

vector (initializer_list<value_type> il,const allocator_type& alloc = allocator_type());

基本使用如下:

#include <iostream>
#include <vector>int main()
{std::vector<int> v{1,2,3,4,5};std::for_each(v.begin(), v.end(), [](int num) -> void {std::cout << num << " ";});return 0;
}输出结果:
1 2 3 4 5

基本使用

在标准库中,initializer_list可以使用下面的构造函数创建一个空initializer_list对象:

initializer_list() noexcept;

但是,根据官方文档的描述,尽管缺乏有参构造函数,initializer_list类依旧可以创建非空对象,只需要使用花括号列表初始化即可,例如下面的代码:

std::initializer_list<int> il{1,2,3,4};

常见函数

initializer_list类有三种常用的函数:

  1. size():获取initializer_list对象中的元素个数
  2. begin():获取initializer_list对象中第一个元素位置的迭代器
  3. end():获取initializer_list对象中最后一个元素下一个位置的迭代器

基本使用如下:

#include <iostream>
#include <vector>int main()
{std::initializer_list<int> il{1,2,3,4};std::cout << il.size() << std::endl;std::for_each(il.begin(), il.end(), [](int num) -> void {std::cout << num << " ";});return 0;
}输出结果:
4
1 2 3 4

http://www.lryc.cn/news/461626.html

相关文章:

  • 持续科技创新 高德亮相2024中国测绘地理信息科技年会
  • 深入理解HTTP Cookie
  • Python多进程编程:使用`multiprocessing.Queue`进行进程间通信
  • Docker 常见命令
  • Map 双列集合根接口 HashMap TreeMap
  • Pip源设置(清华源)相关总结
  • 编程入门攻略
  • C++核心编程和桌面应用开发 第十一天(静态转换 动态转换 常量转换 重新解释转换)
  • Ubuntu-Ubuntu22.04下Anacodna3的qmake和Qt的qmake冲突问题
  • mysql用户管理(user表列信息介绍,本质,管理操作),数据库的权限管理(权限列表,权限操作)
  • AI工具 | Notion全新AI集成:搜索、内容生成、数据分析与智能聊天功能发布
  • 微知-如何查看PCIe设备插入在哪个插槽以及对应的busid?(biosdecode)
  • 数据结构 —— 树和二叉树简介
  • ubuntu安装boost
  • 【Spring AI】Java实现类似langchain的第三方函数调用_原理与详细示例
  • CIM系统:智慧城市的数字基石
  • Android中Fragment的使用场景与生命周期
  • 输入网址后,浏览器是如何高效渲染出网页的?
  • springboot单文件,多文件下载方式
  • JIT详解
  • 线下陪玩导游系统软件源码,家政预约服务源码(h5+小程序+app)
  • 模拟退火算法最常见知识点详解与原理简介控制策略
  • C语言高效内存管理:对齐、缓存与位域
  • ES操作指南
  • 【黑苹果】记录MacOS升级Sonoma的过程
  • 向“新”发力,朝“质”攀峰 | 资福医疗携手大圣胃肠一体内窥镜系统亮相江苏省医学会第八次健康管理学学术会议
  • springboot项目多个数据源配置 dblink
  • leetcode中哈希的python解法:Counter()介绍
  • VAS1800Q奇力科技线性芯片电荷泵热处理AEC-Q1000
  • Java 枚举的 valueOf() 方法与 Stream API 查找枚举对象