在不改变基类头文件的前提下,使用基类成员函数

来源:互联网 发布:eplan软件 64位 编辑:程序博客网 时间:2024/04/30 16:27

一:如果想不改变基类头文件,又想使用基类,这时可以看看基类头文件的成员函数的样子:

case1:基类成员函数定义了类外的变量接口,

如 :void read(std::string const& se, std::string const& en, int& value) {}  //value是类外定义的变量接口,

则可以不重新写继承类,而直接使用老类的这个函数,在使用时:

int value = 0; //初始化

(class) config.read(xxxx, xxxx, value);


case2: 继承

1:基类构造函数:需同时定义继承基类和组合基类的构造函数,子类的构造函数最少要定义基类的一个构造函数

如:CB(int a, int b ,int c):CA(a,b),C(c){};

2:继承类成员 可以 和基类成员同名

3:继承类成员函数 可以 和基类成员函数同名(这就涉及到多态)

4:继承类没有重新定义基类函数, 继承类对象可以直接调用基类函数

如:

class A{public: int a; A() {a=1; } void print(){ printf("%d",a);}};class  B:public A{public: int a; //同名成员变量 B(){a=3;}};void main(){ B b; b.print(); //调用基类print函数 printf("%d ",b.a);}5:继承类的成员函数可以调用基类的public成员函数
参考:
http://zhidao.baidu.com/link?url=hWwiPXSdeWgU-WQEjSfskwIoa3bhezFaMGcfctZWt7NTa2229pAmDdFuiwuaUZjikkcokR8UP9gWpbqIn9H34K5

0 0
原创粉丝点击