【3】C++2.0(C++11/14)统一初始化(Uniform Initialization) 您所在的位置:网站首页 从double转换到float需要收缩转换 【3】C++2.0(C++11/14)统一初始化(Uniform Initialization)

【3】C++2.0(C++11/14)统一初始化(Uniform Initialization)

2024-07-10 19:59| 来源: 网络整理| 查看: 265

C++11引入了统一初始化的概念,我们可以使用大括号“{}”这种通用的语法在任何需要初始化的地方。

在C++11前用多种方式进行初始化,如下面例子

    int i(0);     int j = 1;     int arr[3] = { 1, 2, 3 };

 在C++11后我们可以使用通用的初始化方式,大括号{}:

1.初始化

    int i1;                            // i1是未定义的值     int j1{};                        // j1的初值是0     int *p;                            // p是未初始化的指针,指向未知     int *q{};                        // q初始化为nullptr

2.设置初值 

    int ii{ 0 };     int jj{ 1 };     int arrkk[3]{ 1, 2, 3 };

3. 严格的类型转换(vs2013)

    int x1(5.1);                    // warning C4244: “初始化”: 从“double”转换到“int”,可能丢失数据     int x2 = 5.2;                    // warning C4244: “初始化”: 从“double”转换到“int”&#



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有