【b站黑马程序员C++视频学习笔记-继承的基本语法】

继承的基本语法

一、不使用继承来模拟各课程界面
比如要实现java视频学习页面,就可以像下面这样写。如果想加其他学科的话,就是复制粘贴这一段代码,因为各课程只有内容不同,所以就把类名变了,然后把内容那里输出的部分修改一下就可以了,但是这样做重复的代码太多了,可以考虑用继承来实现

#include
using namespace std;

//普通实现页面

//Java页面
class Java
{
public:
	void header() {//公共头部
		cout << "首页、公开课、登录..." << endl;
	}
	void footer() {//公共尾部
		cout << "帮助中心、交流合作、站内地图..." << endl;
	}
	void left() {//公共分类列表
		cout << "Java、Python、C++..." << endl;
	}
	void content() {
		cout << "Java学科视频" << endl;
	}

};

void test01() {
	cout << "Java下载视频页面如下:" << endl;
	Java ja;
	ja.header();
	ja.footer();
	ja.left();
	ja.content();
}

int main() {
	test01();

	system("pause");
	return 0;
}

二、使用继承来实现
1.继承语法:
class 子类:继承方式 父类
2.子类也叫派生类,父类也叫做基类
下面的代码就是把每个类继承了BasePage公共页面类,然后每个类中只用定义自己特有的那部分就行了

//继承实现页面

//公共页面类
class BasePage//把公共的部分定义在里面
{
public:
	void header() {//公共头部
		cout << "首页、公开课、登录..." << endl;
	}
	void footer() {//公共尾部
		cout << "帮助中心、交流合作、站内地图..." << endl;
	}
	void left() {//公共分类列表
		cout << "Java、Python、C++..." << endl;
	}
};

//Java页面
class Java :public BasePage//继承公共页面
{
public:
	void content() {
		cout << "Java学科视频" << endl;
	}
};

//Python页面
class Python :public BasePage//继承公共页面
{
public:
	void content() {
		cout << "Python学科视频" << endl;
	}
};

//C++页面
class CPP :public BasePage//继承公共页面
{
public:
	void content() {
		cout << "CPP学科视频" << endl;
	}
};

void test01() {
	cout << "Java下载视频页面如下:" << endl;
	Java ja;
	ja.header();
	ja.footer();
	ja.left();
	ja.content();
	cout << "---------------------------" << endl;
	cout << "Python下载视频页面如下:" << endl;
	Python pa;
	pa.header();
	pa.footer();
	pa.left();
	pa.content();
	cout << "---------------------------" << endl;
	cout << "C++下载视频页面如下:" << endl;
	CPP cp;
	cp.header();
	cp.footer();
	cp.left();
	cp.content();

}

int main() {
	test01();

	system("pause");
	return 0;
}

运行结果如下:
【b站黑马程序员C++视频学习笔记-继承的基本语法】_第1张图片

你可能感兴趣的:(c++,音视频,学习)