什么是继承

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 结构体上面的内存布局是相反的