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;
}
相关推荐
leoZ23110 小时前
AI 辅助开发的五道坎
开发语言·人工智能·视觉检测·bert·php·超分辨率重建·openvino
会周易的程序员11 小时前
aiDgePLC — IEC61131-3 ST PLC 虚拟机调试与运行环境
c++·物联网·虚拟机·st·工业协议·iec61131·梯形图
程序员老陆11 小时前
Qt的QThread::usleep和FFmpeg的libavutil模块的av_usleep哪个精度高一些?
开发语言·qt·ffmpeg·音视频
2601_9638699511 小时前
【计算机毕业设计】基于Java的相框定制系统的设计与实现
java·开发语言·课程设计
名字还没想好☜12 小时前
Go 的 unsafe.Pointer 实战:零拷贝 []byte↔string 转换与三条铁律
开发语言·后端·golang·go·unsafe
wuminyu12 小时前
JVM利用io_uring优化堆外内存性能原理剖析
java·linux·c语言·jvm·c++
gumichef12 小时前
第二章:C/C++内存管理
c++·内存管理
天天进步201513 小时前
Python全栈项目--协同办公平台
开发语言·python
JAVA面经实录91713 小时前
集合框架 (六)
java·开发语言
xzlAwin13 小时前
Go语言多版本管理器g工具命令
开发语言·golang