C++中值初始化和默认初始化有什么区别?

C++中值初始化和默认初始化有什么区别?... C++中值初始化和默认初始化有什么区别? 展开
 我来答
hwoto
推荐于2017-10-06
知道答主
回答量:9
采纳率:0%
帮助的人:7.1万
展开全部
初始化是指在定义变量的时候,当场给变量赋值;默认初始化是指定义变量的时候,不做赋值操作,系统根据默认规则给变量以数值。
匿名用户
推荐于2017-09-06
展开全部
例如
int a; //默认初始化
int b = 1; //值初始化
如果直接声明而没有定义的,就会默认初始化
如果有声明有定义的,就会值初始化
(int 类型的默认初始化就是什么也不做)
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
卷着的首页
2018-06-06
知道答主
回答量:2
采纳率:0%
帮助的人:1759
展开全部
默认初始化有几种情况: ① 全局变量,默认初始化为0;② 内建类型的局部非静态变量,默认不被初始化,结果是值未定义;③ 类类型初始化的值,由默认构造函数的定义决定。
值初始化有几种情况:① 内建类型的局部静态变量(对应上面的②),值初始化为0; ②使用 Type()显式地请求一个类对象的初始值时,值初始化。③创建了数组但是没有给数组成员初始值或者初始值个数小于成员个数,按成员类型进行值初始化,string初始化为空字符串,int初始化为0.
其实,只是叫法不一样, 记住各种初始化情况的内容比较重要。 表现上没有很明显的区分, 比如默认初始化的①和值初始化的①,表现就很像。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式