C++基类说明解析

开发 后端
在C++中要定义的新的数据类型不仅拥有新定义的成员,而且还同时拥有旧的成员,我们称已存在的用来派生新类的类为C++基类,又称为父类。

C++通过继承机制,可以利用已有的数据类型来定义新的数据类型,下面文章给出了C++基类来管理内存的完整内存池管理程序和测试程序的源代码,供大家学习切磋。

作为继承,主要有三种:公有继承,私有继承(默认继承方式),保护继承。公有继承:基类中的公有成员在派生类中仍公有;基类中的保护成员在派生类中仍保护;基类中的私有成员在派生类中不可见,仅基类可见。#t#

私有继承:基类中的公有成员在派生类中为私有;C++基类中的保护成员在派生类中为私有;基类中的私有成员在派生类中不可见,仅基类可见。保护继承:基类中的公有成员在派生类中为保护;

C++基类中的保护成员在派生类中为保护;基类中的私有成员在派生类中不可见,仅C++基类可见。通过继承机制,派生类继承了基类的成员,所继承的成员只属于派生类。即基类和派生类各有一份这样的成员,这点很重要。接下来,我们不慌看继承,回到类来看:(个人理解所谓可见性即是调用权限!)

接下来,我们不慌看继承,回到类来看:

  1. #include《iostream》  
  2. using namespace std;  
  3. class A{  
  4. public:  
  5. void dump()const{....}  
  6. protected:  
  7. void get_x(){x++;}  
  8. private:  
  9. int x;  
  10. };  
  11. class B:public A  
  12. {  
  13. public:  
  14. void get(){ get_x();}  
  15. /* void get_y(){ y=x;} */  
  16. void compare(A &a){ a.get_x();}  
  17. protected:  
  18. void set(){...}  
  19. private:  
  20. int y;  
  21. };  
  22. int main()  

于是我们知道,在派生类不可见的成员并不是不可访问的,可以通过间接的方式访问!总结上面的,做了一张表:(注:派生类中成员的可见性是指继承来的和自身添加的成员。

成员

C++基类(类)

派生类

main

私有数据

可见

  不可见

  不可见

私有函数

  可见

  不可见

  不可见

保护数据

  可见

  可见

不可见

保护函数

  可见

  可见

  不可见

公有数据

  可见

  可见

  可见

公有函数

  可见

  可见

可见

责任编辑:chenqingxiang 来源: 赛迪网
相关推荐

2010-01-21 13:33:44

C++基类

2010-01-28 13:27:12

C++类定义

2010-01-20 18:06:06

C++虚基类

2010-01-26 14:23:50

C++类

2010-01-26 16:54:58

学习C++

2010-01-19 18:35:12

静态成员

2010-02-02 13:41:01

C++类继承

2010-01-14 17:42:47

CC++

2010-01-26 10:42:26

C++函数

2011-06-01 10:19:41

基类对象派生类对象

2010-01-26 13:36:27

C++设计

2010-01-26 13:42:28

C++指针

2010-01-25 10:54:18

C++设计

2010-01-28 11:08:09

C++变量

2010-01-19 13:43:59

C++函数

2010-01-19 17:54:47

C++程序

2010-01-25 18:19:17

C++特性

2010-01-25 18:19:17

C++特性

2010-01-21 15:07:31

C++开发

2010-01-25 18:19:17

C++特性
点赞
收藏

51CTO技术栈公众号