C++效率(一)构造函数初始化及参数的默认值

本文介绍了构造函数中的两种初始化方式:构造函数体内的赋值语句和初始化列表,并详细阐述了这两种方式的区别及其效率上的差异。

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

[i][b]本文为firedragonpzy原创,转载务必在明显处注明:
转载自【Softeware MyZone】原文链接: http://www.firedragonpzy.com.cn/index.php/archives/107[/b][/i]

构造函数的初始化有两种:(一)在构造函数体的赋值语句中设置,(二)在构造函数中使用初始化列表
(一)构造函数体的赋值语句中设置
Student( string s_name = "pzy", string s_sex = "male", int i_age = 20 )
{
name = s_name;
sex = s_sex;
age = i_age;
}

(二)使用初始化列表
Student(string s_name, s_string sex, int i_age) : name(s_name), sex(s_sex), age(i_age)

其实,这不仅表示法不同,初始化的方式上也有很大的不同,效率也有悬殊。在使用在构造函数体中初始化成员的时候,首先创建该数据成员,再进行赋值语句。而使用初始化列表,数据成员在创建的时候,就用初始值进行了初始化。这要比在构造函数中使用赋值语句效率高得多,特别是在数据成员是一个类实例的时候。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值