C++ Primer--第二章知识点总结(待续)

Posted kanna

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++ Primer--第二章知识点总结(待续)相关的知识,希望对你有一定的参考价值。

初始化

  当对象在创建时获得了一个特定的值,我们说这个对象被 初始化(initialized)了,我们说这个对象被初始化了。

  对于已经初始化变量立即就可以使用: int PI=3.14,v=PI*PI;

列表初始化

  C++定义了初始化的好几种不同形式,这也是初始化问题复杂性的一个体现。

  如:

int sold =0;
int sold={0};
int sold(0);
int sold{0};

这种列表初始化是C11的新标准的一部分,同时当用于内置类型的变量,这种初始化形式有一个重要的特点:如果我们使用列表初始化的时候存在丢失信息的风险,编译器会报错

long double ld=3.1415926536;
int a{ld},b={ld};  //错误:转化未执行,因为存在丢失信息的风险
int c{ld},d=ld;    //正确:转化执行,且确实丢失了部分值

/*
错误    C2397    从“long double”转换到“int”需要收缩转换    
错误    C2397    从“long double”转换到“int”需要收缩转换    
警告    C4244    “初始化”: 从“long double”转换到“int”,可能丢失数据    
*/

 

技术图片

--------------------------------------------------------------------待续----------------------------------

以上是关于C++ Primer--第二章知识点总结(待续)的主要内容,如果未能解决你的问题,请参考以下文章

超硬核知识:两万字总结《C++ Primer》要点!

c++ Primer 第十章不熟悉知识点总结

C++ C++ Primer 基础知识笔记

C++ C++ Primer 基础知识笔记

C++ C++ Primer 基础知识笔记

C++ Primer Plus基础知识部分快速通关