十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
1.派生类构造函数的一般形式为:
西岗网站制作公司哪家好,找创新互联!从网页设计、网站建设、微信开发、APP开发、成都响应式网站建设公司等网站项目制作,到程序开发,运营维护。创新互联于2013年成立到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联。
派生类构造函数名(总参数表):基类构造函数名(参数表)
{
派生类中新增加数据成员初始化语句
}
2.在建立一个对象时,执行构造函数的顺序是:
a.派生类构造函数先调用基类构造函数;
b.再执行派生类构造函数本身(即派生类构造函数的函数体)
3.在派生类对象释放时,先执行派生类析构函数,再执行其基类析构函数
例:定义一个简单的派生类构造函数。
解:程序:
#include
#include
using namespace std;
class Student//声明一个基类Student
{
public:
Student(int n, string nam, char s)//定义基类构造函数
{
num = n;
name = nam;
sex = s;
}
~Student()//基类析构函数
{
}
protected:
int num;
string name;
char sex;
};
class Student1 :public Student//声明公用派生类Student1
{
public:
Student1(int n, string nam, char s, int a, string ad) :Student(n, nam, s)//定义派生类构造函数
{
age = a;//在函数体中只对派生类新增加的数据成员初始化
addr = ad;
}
void show()
{
cout << "num:" << num << endl;
cout << "name:" << name << endl;
cout << "sex:" << sex << endl;
cout << "age:" << age << endl;
cout << "address:" << addr << endl << endl;
}
~Student1()//派生类析构函数
{}
private:
int age;
string addr;
};
int main()
{
Student1 stud1(1001, "yaoyao", 'f', 20, "hanzhong");
Student1 stud2(1002, "xiaoxiao", 'm', 20, "xianyang");
stud1.show();//输出第一个学生数据
stud2.show();//输出第二个学生数据
system("pause");
return 0;
}
结果:
num:1001
name:yaoyao
sex:f
age:20
address:hanzhong
num:1002
name:xiaoxiao
sex:m
age:20
address:xianyang
请按任意键继续. . .