我的C++学习笔记——初始化和赋值的区别

来源:互联网 发布:卖家淘宝发货回复大全 编辑:程序博客网 时间:2024/05/20 16:32
初始化和赋值初始化
初始化的定义
初始化是指在对象(变量)定义是获得了有特定的值,这就是对象(变量)的初始化。赋值:赋值的含义是把当前对象(变量)的值抹去,再用一个新的值来代替它。初始化的方式在C++ 新的11标准中,用花括号得到了全面的应用。这种用花括号初始化变量的方式被称为“列表初始化”。
列表初始化:列表初始化有一个特点。。。当你用列表初始化而且初始化的时候存在丢失信息风险时会报错。
如: long double ld = 2.3;    int a{ld},b = {ld};  //错误,因没有进行转换。。存在丢失的风险。    int c{ld}, d = ld;   //正确,进行了转化。
默认初始化:当定义变量没有指定初值时。这就是默认初始化。
这个默认值,是由变量类型决定的,嗯。。
而且定义变量的位置也会对其有影响。如果是内置类型的变量没有被显式的初始化,那他的值是定义的位置决定的。定义为函数内部的变量将会被初始化为0。
但是还有一个例外!一个定义在函数内部的 “内置类型变量”将不会被默认初始化,,这个值将是未定义的而且,当你拷贝或以其他形式访问此类值将引发错误。
PS:定义时不进行初始化是一种非常.....不好的习惯。
PSS:各位大佬,求放过,我是一个新人,写博客是为了更好的学习,如果有错希望能够帮助我改正一下,谢谢了。
0 0
原创粉丝点击