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

网站设计专业就业方向有哪些青岛网络推广的有哪些公司

网站设计专业就业方向有哪些,青岛网络推广的有哪些公司,小程序后端开发,网页具有动画网站建设技术一、什么是initializer_list? nitializer_list 是一种C11新的类型特性,它允许我们以统一的方式初始化对象。它是一个代表数组的轻量级包装器,通常用于构造函数和函数参数中,以允许传递一个初始化元素列表。 initializer_list也是一种模板类…

一、什么是initializer_list?

nitializer_list 是一种C++11新的类型特性,它允许我们以统一的方式初始化对象。它是一个代表数组的轻量级包装器,通常用于构造函数函数参数中,以允许传递一个初始化元素列表。

  • initializer_list也是一种模板类型。
    template< class T >class initializer_list;

  • 该类模板中主要有三个方法:begin()end()迭代器以及获取区间中元素个数的方法size()

  • 保存的只是指向一个常量,无法对其修改

  • C++11允许构造函数和其他函数把初始化列表当做参数。

二、为什么要使用initializer_list?

1.需要传入不确定个数的实参时

#include <initializer_list>
#include <iostream>void print(std::initializer_list<int> ilist) {for (auto elem : ilist) {std::cout << elem << ' ';}std::cout << std::endl;
}int main() {print({1, 2, 3, 4, 5}); // 输出:1 2 3 4 5return 0;
}
  • print函数的形参列表是:std::initializer_list<int> ilist,所以,我们在调用print函数时就可传入任意个数的参数,

2.快速对STL容器进行初始化

对于STL的container的初始化就方便多了,比如以前初始化一个vector需要这样:

std::vector v;
v.push_back(1);
v.push_back(2);
v.push_back(3);
v.push_back(4);

在c++11添加了initializer_list后,我们可以这样初始化

std::vector v = { 1, 2, 3, 4 };

3.多个对象的列表初始化

class Date
{
public:Date(int year = 0, int month = 1, int day = 1):_year(year), _month(month), _day(day){cout << "这是日期类" << endl;}private:int _year;int _month;int _day;
};
int main()
{//C++11容器都实现了带有initializer_list类型参数的构造函数vector<Date> vd = { { 2022, 1, 17 }, Date{ 2022, 1, 17 }, { 2022, 1, 17 } };return 0;
}

三、优缺点

优点

(1).统一初始化语法:使用 initializer_list,可以为不同的容器和对象类型提供统一的初始化语法。
(2).简化构造函数重载:可以用一个接受 initializer_list 参数的构造函数替代多个重载版本。
(3).支持范围 for 循环:initializer_list 支持基于范围的 for 循环,使得遍历元素变得非常简洁。

缺点

(1).只读:initializer_list 中的元素是只读的,你不能修改其中的元素。
(2).性能考虑:使用 initializer_list 可能涉及数组的复制,尤其是在传递给构造函数或函数时。
(3).生命周期:initializer_list 引用的元素数组的生命周期与 initializer_list 对象的生命周期相同,这可能导致悬垂引用的风险。

http://www.yayakq.cn/news/578101/

相关文章:

  • 课程网站资源建设小结公司注册多久能查到
  • seo网站模板下载厦门网站建设方案开发
  • 网站正在建设中 敬请期待网站推广具体内容简要说明
  • 建站公司技术服务费wordpress社区主题
  • 营销型网站建设哪好信用中国 网站 建设方案
  • dedecms下载站虚拟主机是啥
  • 私人家庭影院5577兰州模板网站seo价格
  • 承德网站设计公司微信显示个人网站
  • 系统难还是网站设计难做上海网站制作建设是什么
  • 做地方门户网站的排名做快递网站难吗
  • 平板电脑可以做网站不cms网站管理系统源码
  • 高明铝业网站建站网站开发 分工
  • 品牌型网站设计wordpress广告管理
  • 如何建设彩票网站成都设计网站的公司名称
  • 康保网站建设网站建设制作设计seo优化湖北
  • 找人做个网站大概多少钱网站建设的技术要求
  • 天津工程建设协会网站做自行车车队网站的名字大全
  • 网站seo百度百科网站设置在哪里找到
  • 网站制作业务做网站推广哪些
  • 网站开发静态怎样转成动态wordpress mip 插件
  • 建设网站可以先买域名吗wordpress svg logo
  • 深圳制作网站服务网站的页面布局是什么
  • 网站文章更新东莞高端品牌网站建设价格
  • .net作业做网站案例较少如何做设计公司网站
  • 南充企业网站建设广告公司制作公司
  • 广西南宁建设厅网站网站设计书模板
  • 社交网站开发语言雅虎搜索
  • 建筑网站新闻写那些好做餐饮类网站用哪个程序
  • 网站开发 ssh 菜鸟数字营销的定义是
  • 免费做简易网站一个人怎么做原创短视频