博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Cpp3 继承
阅读量:6867 次
发布时间:2019-06-26

本文共 661 字,大约阅读时间需要 2 分钟。

什么是继承

struct Person  {    int age;    int sex;  };struct Teacher  {    int age;    int sex;    int level;    int classId;  };struct Teacher:Person  {    int level;    int classId;  };

总结:

 
1、什么是继承? 
  继承就是数据的复制 
2、为什么要用继承? 
  减少重复代码的编写 
3、Person 称为父类或者基类
 
4、Teacher称为子类或者派生类 

继承不仅仅局限于父类

struct X  {    int a;  int b;};  struct Y:X  {    int c;  int d;};  struct Z:Y      //Z的成员只继承c d吗?{    int e;  int f;}; 

内存布局

多重继承

struct X  {    int a;    int b;  };  struct Y  {    int c;    int d;  };  struct Z:X,Y  {    int e;    int f;  };

内存布局:

总结: 

  多重继承增加了程序的复杂度,不建议使用。
  多重继承的顺序会影响内存布局 比如继承 x,y 和继承y,x;z 结构体上面的内存布局是相反的

转载于:https://www.cnblogs.com/daoyi/articles/Cpp3-ji-cheng.html

你可能感兴趣的文章
Collection集合
查看>>
meta name="viewport" content="width=device-width,initial-scale=1.0" 解释
查看>>
mshup总结
查看>>
舒服的颜色2
查看>>
Android 用户界面---通知(Notifications)概要
查看>>
linux下挂载U盘
查看>>
防SQL注入 记
查看>>
创业公司该不该被收购?(转)
查看>>
更改visio的默认线粗方法
查看>>
单例的使用总结
查看>>
PHP获取本周第一天和最后一天
查看>>
Razor练习4
查看>>
【OpenStack】OpenStack系列16之OpenStack镜像制作
查看>>
STL algorithm源代码:stl_algo.h
查看>>
VK Cup 2016 - Qualification Round 2 C. Road Improvement dfs
查看>>
Linux下文件重命名、创建、删除、修改及保存文件
查看>>
判断IP是否为爬虫IP
查看>>
Linux 内核使用的 GNU C 扩展
查看>>
Android 之 用WebView显示网页
查看>>
go——搭建Win7下的Go开发环境
查看>>