C++ 抽象

关键字:virtual

在C++中可以使用关键字 virtual将函数声明为抽象函数,从而对类进行抽象;至少有一个成员函数为抽象函数的类将被视为抽象类。抽象类无法进行实例化,因而抽象类在C++中一般是为了给其他类提供一个可以继承的适当的基类作为接口使用。

cpp 复制代码
#include <iostream>
using namespace std;

class Model {
	public:
		virtual int getData() = 0;
		void setData(int d) {
			this->data = d;
		}
	protected:
		int data;
};
class Ob: public Model {
	public:
		int getData() {
			return this->data;
		}
};

int main() {
    Ob b;
    b.setData(13);
    cout<<b.getData();
	return 0;
}
相关推荐
-To be number.wan2 小时前
C++ 赋值运算符重载:深拷贝 vs 浅拷贝的生死线!
前端·c++
疯狂的挖掘机3 小时前
记一次基于QT的图片操作处理优化思路(包括在图上放大缩小,截图,画线,取值等)
开发语言·数据库·qt
cnxy1883 小时前
围棋对弈Python程序开发完整指南:步骤4 - 提子逻辑和劫争规则实现
开发语言·python·机器学习
意趣新3 小时前
C 语言源文件从编写完成到最终生成可执行文件的完整、详细过程
c语言·开发语言
李艺为4 小时前
根据apk包名动态修改Android品牌与型号
android·开发语言
XXYBMOOO4 小时前
内核驱动开发与用户级驱动开发:深度对比与应用场景解析
linux·c++·驱动开发·嵌入式硬件·fpga开发·硬件工程
黄河滴滴4 小时前
java系统变卡变慢的原因是什么?从oom的角度分析
java·开发语言
老华带你飞5 小时前
农产品销售管理|基于java + vue农产品销售管理系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot·后端
superman超哥5 小时前
Rust Workspace 多项目管理:单体仓库的优雅组织
开发语言·rust·多项目管理·rust workspace·单体仓库
kylezhao20195 小时前
C#通过HSLCommunication库操作PLC用法
开发语言·c#