C++中组合和继承的初始化
来源:互联网 发布:多空博弈指标源码 编辑:程序博客网 时间:2024/05/17 01:52
在C++中单个类的初始化比较简单就略过不说。
当一个类继承了另外一个类,或者是一个类中还存在一个类
class A{
、、、
};
class B
{
、、、
};
class C:classA{
private:
B bb;
int x
public:
C(int ii):B(ii),bb(ii) ,x(ii){};
};
此时我们进行初始化的设置采用的 C(int ii):B(ii),bb(ii), x(ii)这里必须说清楚的有几点:
1.参数是通过C(int ii)向冒号之后的类或者是变量传递的。
2.冒号后面的类或者是变量用逗号隔开
3.C(int ii)中的参数必须和冒号之后一致。这里是ii
4.继承的类用的B(ii)且在B(ii)在类B中一定要有定义
5.包含的类用的是类定义的对象,这里类定义的对象是bb所以是bb(ii)但是在B中也一定要有B(int )的定义
具体举例如下:
#include<iostream>using namespace std;class X{private :int i;public: X(int ii):i(ii){ }; void print() { cout<<i<<endl; }}; class Y{ private: int a; public: Y(int ii):a(ii){ }; void print() { cout<<a<<endl; } }; class Z:public Y{ private: int i; X xx; public: Z(int ii):Y(ii),xx(ii),i(ii){ }; void print() { cout<<i<<endl; Y::print(); xx.print(); }}; int main(){ Z zzz(23); zzz.print();return 0;}
2 0
- C++中组合和继承的初始化
- C++中组合和继承的初始化
- 继承和类的组合/内嵌对象初始化
- 类继承和类组合(内嵌类)初始化的不同
- C++中类的继承和组合
- Java中,组合和继承的区别
- Objective-C中继承中方法调度和组合的存取方法
- c++_3: 继承和组合
- 对C++中类的组合和继承的比较
- 面向对象中组合和继承的关系
- java中组合与继承的区别和联系
- C++中类的组合和继承关系
- 面向对象中组合和继承的关系
- java中组合和继承的结合使用
- java中组合和继承的选择使用
- 继承和组合的比较
- 继承和组合的比较
- 组合和继承的选择
- AChartEngine的一点学习心得
- 关于struts2的namespace=“”和namespace=“/”的思考
- 2014-8-13
- poj 2418 Hardwood Species
- 边沿检测与提取,轮廓跟踪
- C++中组合和继承的初始化
- FLASH在IE6下Error 2032错的处理
- Manaing the Activity Lifecycle
- android模拟器重启问题
- error: expected unqualified-id before 'delete' void delete(node* p,char a) ^
- Linux 双网卡配置两个IP同时只有一个会通的原因
- poj 3096 Surprising Strings
- hdu 1010 Tempter of the Bone(DFS+奇偶剪枝)
- suse linux 11 error: gnu/stubs-32.h: 没有那个文件或目录 解决方法