对象、声明、定义、初始化、赋值

本文详细介绍了C++中对象、声明、定义、初始化和赋值的区别。声明仅指定变量名和类型,不分配空间,而定义则分配内存并可能赋予初始值。初始化是在对象创建时赋予特定值,不同于赋值操作,后者会替换已有值。未初始化的内置类型变量值是未定义的,类对象的默认构造函数决定其初始状态。示例代码展示了不同情况下的初始化和赋值方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

对象、声明、定义、初始化、赋值

声明不等于定义

初始化不等于赋值

对象:一块能储存数据,并具有某种类型的内存空间。

声明:规定了变量的名字和类型,并不申请空间。

定义:为对象分配储存空间,也可能赋予一个初始值。

double geta();//函数声明
int a//内置类型声明,并定义,初始值不确定

初始化:当对象在创建时,获取了一个特定的值,我们说这个对象被初始化了,初始化不是赋值,初始化的含义是创建对象时赋予一个初始值。

赋值:把对象的当前值擦除,用一个新的值来替代(即对象是已经存在的)。

对于内置类型对象而言,如果没有初始化,则其值是未定义的,类的对象如果没有显式初始化,则由类的默认构造函数决定其值。

int a=0;//利用=号初始化
int b(9);//直接初始化
int b{9};//列表初始化,c++11
a=3;//赋值,先删除a原来的值(0),而后赋予a新的值(3)
int c;//声明并定义c,没有初始化,但c的值未定义(可能会随机初始化,这种行为很危险,定义一个对象就应该初始化)

参考资料:c++primer 2.2变量
知乎

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值