C++(三):变量、初始化

本文详细介绍了C++中的变量初始化,包括整型、引用、指针、string、vector和数组的初始化方式。重点讨论了列表初始化、引用绑定的特点以及指针初始化的各种形式。
摘要由CSDN通过智能技术生成

三、变量、初始化

在明白了C++有哪些数据类型以及类型会作何转换之后,需要知道对这些数据类型可以做哪些相关的运算,以及各个运算的优先级。

变量

我们使用 变量 是在对一段存储空间进行命名以供程序操作。变量需要知道其数据类型。前面提过,数据类型为每一个变量明确了占据空间的大小和布局方式,也定义了其能参与的所有运算。

变量(variable)对象(object) 一般可以互换使用.

变量的初始化

变量的定义没什么特殊的,在此也不做过多的记录。但是在定义变量的时候,我们往往需要明确变量的类型同时为其初始化,而这是一个相当复杂的问题。

整型的初始化

如果我们想要初始化 整型 类型有如下的语句:
以int为例

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

这种花括号的形式被称为 列表初始化 (list initialization) 。这种初始化有个重要特点:倘若存在丢失信息的风险,则编译器会报错。

long double ld = 3.1415926536;
int a{
   ld},b = {
   ld};  //报错,因为类型转换存在丢失信息的风险
int a = ld, b(ld);    //正确,但是会因此损失精度

引用的初始化

通过将声明符写成 &d 的样式来定义引用类型,他必须被初始化

一般初始化变量的时候,初始值是被 拷贝 到新建的对象中的。但是引用不是,系统将引用与初始值 绑定 。因此引用无法更换与之绑定的对象。

int ival = 1000;
int &refval = ival;  //这是正确的,refval指向ival,是ival的另外一个名字
int &refval2;   //这是错误的,因为引用必须初始化
int &refval3 = 4; //错误,引用不可与字面值绑定
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值