对派生类的初始化

简介:

对派生类的初始化,从派生类的构造函数开始用初始式进行初始化。

初始式的格式:

派生类的构造函数(参数表):基类构造函数(参数表),对象成员(参数表)...普通成员(初始值)。

初始式的存在意义是,1.可以给带参数的类成员变量赋初值。2.效率问题,(水平不够暂且搁置)

class parent_class{

int data1,data2;

public:

parent_class(int p1 ,int p2){data1=p1;data2=p2;}

int inc1(){

return ++data1;

}

int inc2(){

return ++data2;

}

void display(){

cout<<"data1="<<data1<<",data2="<<data2<<endl;

}

};

class derived_class:private parent_class{

int data3;

parent_class data4;//对象成员

public:

derived_class(int p1,int p2,int p3,int p4,int p5):

        parent_class(p1,p2),data4(p3,p4),data3(p5){//对派生类的初始化过程

// data3=p5;

}

int inc1(){ return parent_class::inc1();}

int inc3(){ return ++data3;}

void display(){

parent_class::display();

data4.display();

cout<<"data3="<<data3<<endl;

}

};

int main(){

derived_class d1(17,18,1,2,-5);

d1.inc1();

d1.display();

return 0;

}


本文转自 神迹难觅 51CTO博客,原文链接:http://blog.51cto.com/ji123/1916432,如需转载请自行联系原作者
相关文章
|
安全 Java 编译器
C++将派生类赋值给基类
在 C/C++ 中经常会发生数据类型的转换,例如将 int 类型的数据赋值给 float 类型的变量时,编译器会先把 int 类型的数据转换为 float 类型再赋值;反过来,float 类型的数据在经过类型转换后也可以赋值给 int 类型的变量。 数据类型转换的前提是,编译器知道如何对数据进行取舍。例如: int a = 10.9; printf("%d\n", a); 输出结果为 10,编译器会将小数部分直接丢掉(不是四舍五入)。再如: float b = 10; printf("%f\n", b); 输出结果为 10.000000,编译器会自动添
132 0
|
1月前
|
编译器 C++
C++ 类构造函数初始化列表
构造函数初始化列表以一个冒号开始,接着是以逗号分隔的数据成员列表,每个数据成员后面跟一个放在括号中的初始化式。
69 30
|
17天前
|
C++
C++构造函数初始化类对象
C++构造函数初始化类对象
13 0
|
15天前
|
Java 程序员 C#
【类的应用】C#应用之派生类构造方法给基类构造方法传参赋值
【类的应用】C#应用之派生类构造方法给基类构造方法传参赋值
8 0
|
5月前
|
编译器 C++
30利用构造函数对类对象进行初始化
30利用构造函数对类对象进行初始化
43 0
|
存储 编译器 C语言
【C++学习】类和对象 | 类的成员函数存放在哪里?| this指针 | 构造函数 | 析构函数 | 探索构造和析构函数的更多细节
【C++学习】类和对象 | 类的成员函数存放在哪里?| this指针 | 构造函数 | 析构函数 | 探索构造和析构函数的更多细节
201 0
【为什么】构造函数中可以调用虚函数吗?
【为什么】构造函数中可以调用虚函数吗?
基于C/C++将派生类赋值给基类的详细讲解
基于C/C++将派生类赋值给基类的详细讲解
195 0
基类与派生类对象的关系 派生类的构造函数
🐰 基类与派生类对象的关系 🐰派生类的构造函数
|
编译器 C++
【C++要笑着学】类的默认成员函数详解 | 构造函数 | 析构函数 | 构造拷贝函数(一)
朋友们好啊,今天终于更新了。我是柠檬叶子C,本章将继续讲解C++中的面向对象的知识点,本篇主要讲解默认成员函数中的构造函数、析构函数和拷贝构造函数。还是和以前一样,我们将由浅入深地去讲解,以 "初学者" 的角度去探索式地学习。会一步步地推进讲解,而不是直接把枯燥的知识点倒出来,应该会有不错的阅读体验。如果觉得不错,可以 "一键三连" 支持一下博主!你们的关注就是我更新的最大动力!Thanks ♪ (・ω・)ノ
128 0
【C++要笑着学】类的默认成员函数详解 | 构造函数 | 析构函数 | 构造拷贝函数(一)