没有virtual关键字的纯虚函数声明?

geelpheels 2010-09-09 04:38:14
一个类中声明一个函数:

int test() const = 0;



virtual int test() const = 0;

有什么区别?
...全文
244 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
geelpheels 2010-09-12
  • 打赏
  • 举报
回复
[Quote=引用 17 楼 taodm 的回复:]
楼主,手懒是学不好编程的。
[/Quote]

你看看你楼下的就知道了。没有根据不要乱说。
livissc 2010-09-10
  • 打赏
  • 举报
回复
C++primer 4 page503只举了一个派生类的例子,没加virtual

taodm 2010-09-10
  • 打赏
  • 举报
回复
楼主,手懒是学不好编程的。
Y201092245 2010-09-10
  • 打赏
  • 举报
回复
另外CONST 不是必须的。
Y201092245 2010-09-10
  • 打赏
  • 举报
回复
纯虚函数的条件:
1有关键字Vitual 2 =0
十八道胡同 2010-09-09
  • 打赏
  • 举报
回复
纯虚 必须要用virtual
problc 2010-09-09
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 geelpheels 的回复:]
引用 10 楼 q616804668 的回复:
引用 2 楼 akirya 的回复:
第一个能编译过去么?

他可能是看到继承中的子类没用virtual关键字了吧


确实是另一个类的子类。
[/Quote]

子类写不写virtual都是一样的,都是virtual的效果,没区别
just_one_two 2010-09-09
  • 打赏
  • 举报
回复
第一种,语法不支持,没这种写法
geelpheels 2010-09-09
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 q616804668 的回复:]
引用 2 楼 akirya 的回复:
第一个能编译过去么?

他可能是看到继承中的子类没用virtual关键字了吧
[/Quote]

确实是另一个类的子类。
  • 打赏
  • 举报
回复
楼主,纯虚函数一般作为接口来使用

如果你不定义为虚的,那么这个接口还有用吗?
pengzhixi 2010-09-09
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 q616804668 的回复:]
引用 2 楼 akirya 的回复:
第一个能编译过去么?

他可能是看到继承中的子类没用virtual关键字了吧
[/Quote]

那你也试着编译下吧
上善若水邻 2010-09-09
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 akirya 的回复:]
第一个能编译过去么?
[/Quote]
他可能是看到继承中的子类没用virtual关键字了吧
healer_kx 2010-09-09
  • 打赏
  • 举报
回复
楼主你好,下次问问题,好歹也要先试一试再说啊。
cswuyg 2010-09-09
  • 打赏
  • 举报
回复
不打代码是不行的。
zgjxwl 2010-09-09
  • 打赏
  • 举报
回复
必须要用virtual
liutengfeigo 2010-09-09
  • 打赏
  • 举报
回复

#include <iostream>
using namespace std;
class A
{ public:
//int test() const = 0;
virtual int test1() const = 0;

};
int main()
{ A *a;
system("pause");
return 0;
}
guoxuqu 2010-09-09
  • 打赏
  • 举报
回复
同意楼上的观点。
dingshaofengbinbin 2010-09-09
  • 打赏
  • 举报
回复
做实验!!!!!!
herman~~ 2010-09-09
  • 打赏
  • 举报
回复
第一个能编译过去么?
  • 打赏
  • 举报
回复
第一个能编译过去么?
加载更多回复(1)

64,654

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧