社区
C++ 语言
帖子详情
纯虚函数的概念和作用
zhang_game
2005-02-24 03:14:06
纯虚函数的概念和作用?
...全文
1860
22
打赏
收藏
纯虚函数的概念和作用
纯虚函数的概念和作用?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
22 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
fatalerror99
2005-05-05
打赏
举报
回复
与 C++ 有关的书都会介绍这个。
djcong
2005-05-05
打赏
举报
回复
收获很多。
herman~~
2005-05-04
打赏
举报
回复
同意 wildhorseych() 的方法
dongpy
2005-05-04
打赏
举报
回复
纯虚函数是抽象基类提供的公共接口
cppprogramlover
2005-05-04
打赏
举报
回复
up
feng_love
2005-05-04
打赏
举报
回复
纯虚函数就如同一个空的模板,等待使用它的人去实现它
产生纯虚函数主要目的就是可以节省编写程序各方面的消耗。
不能用它去做任何现实的事
homtipo
2005-05-03
打赏
举报
回复
为什么还不结帖???
Wolf0403
2005-02-25
打赏
举报
回复
提供一个接口,供派生类实现。是 C++ 实现多态的有力工具。
melonliu
2005-02-25
打赏
举报
回复
template <class T>
class LinearList {
virtual bool Delete(int)=0;
...
};
template <class T>
class SeqList:public LinearList<T> {
bool Delete(int);
...
};
melonliu
2005-02-25
打赏
举报
回复
作用:两个字,抽象
打个最简单的比方吧。你要实现一个线性表,那么线性表的基本操作是一样的;但是你可以选择链式或者顺序的存贮结构,它们每个基本操作的实现有不同,这时就可以用上抽象基类了。
Amour81
2005-02-25
打赏
举报
回复
类和派生类之间的联系吧,方便实现。
不过有一点,纯虚函数一定不能声明为INLINE的
sunwt
2005-02-25
打赏
举报
回复
先搞明白虚函数
再搞纯虚函数
CMyMfc
2005-02-25
打赏
举报
回复
抽象基类是C++面向对象中实现接口的一个方法
抽象基类就是接口
其子类就是接口的具体实现
mykreny
2005-02-25
打赏
举报
回复
也可以说是为了方便把那些无干的"强制"相关以实现功能
healer_kx
2005-02-25
打赏
举报
回复
在JAVA里有abstract类。抽象类,做为一个抽象的概念是不能创建对象的。
你的非抽象类要实现其abstract类(没有实现的方法(接口)),
C++里我们使用 纯虚函数实现这种功能。 = 0;
yuzl32
2005-02-25
打赏
举报
回复
看书
CloudOfFly
2005-02-24
打赏
举报
回复
赋直为0的虚函数为纯虚函数
ybt631
2005-02-24
打赏
举报
回复
就是一个纯声明的接口,具体实现需要派生类去实现(可以通过不同的派生类实现该接口的不同功能)
little_paradise
2005-02-24
打赏
举报
回复
看看书嘛,基本上讲C++的语言都会有的吧,满好理解的
tongdegang2005
2005-02-24
打赏
举报
回复
纯虚函数通常用来声明接口,不提供实现。具体的实现由继承类来实现,如果继承类没有实现,那么这个继承类依然是抽象类。
加载更多回复(2)
c++中虚函数和
纯虚函数
的
作用
与区别
虚函数为了重载和多态的需要,在基类中是有定义的,即便定义是空,所以子类中可以重写也可以不写基类中的此函数!
纯虚函数
在基类中是没有定义的,必须在子类中加以实现,很像java中的接口函数! 虚函数 引入原因:为了方便使用多态特性,我们常常需要在基类中定义虚函数。 class Cman { public: virtual void Eat(){……}; void Move(); private: }; class CChild : public CMan { public: virtual void Eat(){……}; private: }; CMan m_man; CChild m_chil
C++ 虚函数和
纯虚函数
的区别分析
首先:强调一个
概念
定义一个函数为虚函数,不代表函数为不被实现的函数。 定义他为虚函数是为了允许用基类的指针来调用子类的这个函数。 定义一个函数为
纯虚函数
,才代表函数没有被实现。 定义
纯虚函数
是为了实现一个接口,起到一个规范的
作用
,规范继承这个类的程序员必须实现这个函数。 简介 假设我们有下面的类层次: class A { public: virtual void foo() { cout<<"A::foo() is called"<<endl; } }; class B:public A { public: void foo() { cout<<"B::
深入解析C++编程中的
纯虚函数
和抽象类
C++
纯虚函数
详解 有时在基类中将某一成员函数定为虚函数,并不是基类本身的要求,而是考虑到派生类的需要,在基类中预留了一个函数名,具体功能留给派生类根据需要去定义。
纯虚函数
是在声明虚函数时被“初始化”为0的函数。声明
纯虚函数
的一般形式是 virtual 函数类型 函数名 (参数表列) = 0; 关于
纯虚函数
需要注意的几点:
纯虚函数
没有函数体; 最后面的“=0”并不表示函数返回值为0,它只起形式上的
作用
,告诉编译系统“这是
纯虚函数
”; 这是一个声明语句,最后应有分号。
纯虚函数
只有函数的名字而不具备函数的功能,不能被调用。它只是通知编译系统:“在这里声明一个虚函数,留待派
详解C++
纯虚函数
与抽象类
1.虚函数 1.1虚函数简介 虚函数可以毫不夸张的说是C++最重要的特性之一,我们先来看一看虚函数的
概念
。 在基类的定义中,定义虚函数的一般形式为: virtual 函数返回值类型 虚函数名(形参表) { 函数体 } 为什么说虚函数是C++最重要的特性之一呢,因为虚函数承载着C++中动态联编的
作用
,也即多态,可以让程序在运行时选择合适的成员函数。虚函数必须是类的非静态成员函数(且非构造函数),其访问权限是public。那么: (1)为什么类的静态成员函数不能为虚函数? 如果定义为虚函数,那么它就是动态绑定的,也就是在派生类中可以被覆盖的,这与静态成员函数的定义(在内存中只有一份拷贝,
C++中虚函数和
纯虚函数
定义
只有用virtual声明类的成员函数,使之成为虚函数,不能将类外的普通函数声明为虚函数。因为虚函数的
作用
是允许在派生类中对基类的虚函数重新定义。所以虚函数只能用于类的继承层次结构中。 一个成员函数被声明为虚函数后,在同一类族中的类不能再定义一个非virtual的但与该虚函数具有相同的参数(包括个数和类型)和函数返回值类型的同名函数。 根据什么考虑是否把一个成员函数声明为虚函数? ① 看成员函数所在的类是否会作为基类 ② 看成员函数在类的继承后有无可能被更改功能,如果希望更改其功能的,一般应该将它声明为虚函数。 如果成员函数在类被继承后功能不需修改,或派生类用不到
C++ 语言
64,682
社区成员
250,490
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章