C++的初始化与赋值

初始化:对象在创建时(也就是定义时)获得了一个特定的值。

赋值:把对象的当前值擦除,而以一个新值来替代。

string s1;

string s2 = "hello"; // 初始化

s2 = s1; // 赋值

初始化方式,如四种将units_sold的int变量初始化为0的方式:

int units_sold = 0;        // 使用等号

int units_sold = {0};      // 使用等号和花括号

int units_sold{0};         // 列表初始(C++11)

int units_sold(0);         // 使用括号

初始化类型

类型

解释

值初始化

显式的初始化。

直接初始化

不使用等号的初始化

拷贝初始化

使用等号的初始化

默认初始化

定义变量时没有指定初值,则变量被默认初始化,此时变量被赋予了“默认值”。具体是什么由变量类型决定,同时定义变量的位置也会对此有影响。

内置类型

内置类型的没有被显式初始化,其值由定义的位置决定。

  1. 定义于任何函数体之外的变量被初始化为0.
  2. 在函数体内部的内置类型变量将不被初始化,也就是其值是未定义的。

类类型

类的对象如果没有显式初始化,其值由类确定。

int units_sold = int();    // 值初始化

int units_sold = 0;        // 值初始化

int units_sold;            // 默认初始化

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值