构造函数的参数如何初始化表?

发布于 2018-01-30 16:28  编辑:盘子
0
计算机等级考试题库 扫码微信刷题

问:构造函数的参数如何初始化表?


考无忧小编解答:如果类对象的某些数据成员没有载构造函数内部被初始化,那么必须使用构造函数的参数初始化表对他们进行初始化。否则,编译器不止到该如何初始化这些还等着在构造函数内部赋值的成员。我们习惯用参数初始化表来初始化所有数据成员。

class Date

{

int mo,da,yr;

public:

Date(int m=0,int d=0,int y=0);

};

class Employee

{

int empno;

Date datehired;

public:

Employee(int en,Date & dh);

};

可以用下面两种方法编写Employee类的构造函数:

Employee::Employee(int en,Date & dt)

{

empno=en;

datehired=dh;

}

或者;

Employee::Employee(int en,Date & dt):empno(en),datehired(dh)

{

//empty

}

虽然这两种方法效果是一样的,但是根据Date对象默认构造函数的复杂性的不同,这两种形式的效率差别是很大的。





考无忧小编推荐:

更多计算机等级考试真题及答案>>>点击查看

想知道更多关于计算机等级报考指南、考试时间和考试信息的最新资讯在这里>>>点击查看


本文网址:http://www.k51.com.cn/info/jsjdjks/1801/3025398.html
选择分享到: