c++进阶:继承

继承

1. 默认private
2. 子类继承父类的属性和方法
3. 如果子类重写与父类同名的属性和方法,父类的同名属性和方法会隐藏
4. 子类仍然可以显示的调用父类的同名属性和方法
5. 可以多继承

继承方式

1. 共有继承 public
	a. 父类的所有东西都继承
	b. public继承为public,protected继承为protected
	c. privated继承到不可见位置,看不到的,无法访问
2. 保护继承 protected
	a. 父类的所有东西都继承
	b. public继承为protected,protected继承为protected
	c. privated继承到不可见位置,看不到的,无法访问
3. 私有继承 private
	a. 父类的所有东西都继承
	b. public继承为privated,protected继承为privated
	c. privated继承到不可见位置,看不到的,无法访问

多继承

1. 继承多个父类
2. 继承有先后顺序,先继承谁,就先构造谁,析构时相反
3. 菱形继承
	a. 如果A有B、C两个子类,而D又继承了B、C,构成了菱形继承,B、C里有相同的属性和方法,D继承了2份一样的
	b. 这是需要在B继承A,C继承A时加virtual构成虚继承
	c. 这样在实例化D时,只构造了一次A

你可能感兴趣的:(c++进阶)