C++选择题 就1道题3个选项 所以要给出这三个选项的详细解释哦 只要认真答,分很好拿。

1)关于纯虚函数,下列表述中正确的是()A纯虚函数是没有给出实现版本(既无函数体定义)的虚函数B纯虚函数的声明总是以=0结束。C派生类必须实现基类的纯虚函数。题目简单所以... 1)关于纯虚函数,下列表述中正确的是()
A纯虚函数是没有给出实现版本(既无函数体定义)的虚函数
B纯虚函数的声明总是以=0结束。
C派生类必须实现基类的纯虚函数。
题目简单 所以每项都要解释。复制粘贴的我表示看不懂哦
展开
 我来答
匿名用户
2012-07-09
展开全部
纯虚函数是可以是有函数体定义的,所以 A 是错误。
纯虚函数的声明必须要以 = 0 结束,所以 B 是正确。
派生类不一定需要实现基类的纯虚函数,如果基类的纯虚函数有定义,那么可以不用实现,所以 C 是错误。
追问
B我懂  个人感觉ABC都对。所以A,C给出简单的程序说明吧 谢谢啦
追答
这个例子,并没有为基类 A 的纯虚函数定义。补充一下,我刚才对 C 的解释不完全正确,即使基类的纯虚函数没有定义,派生类可以实现基类的纯虚函数,也可以实现,如果不实现,会因为继承基类的纯虚函数,导致派生类也成为抽象类。

#include
using namespace std;
class A
{
public:
virtual void Show() const = 0;
};
class B : public A
{
public:
};
class D : public B
{
public:
virtual void Show() const
{
cout << "D" << endl;
}
};
class C: public A
{
public:
virtual void Show() const
{
cout << "C" << endl;
}
};
int main()
{
C c;
c.Show();
D d;
d.Show();
}
注册成功_bai
2012-07-09 · 超过15用户采纳过TA的回答
知道答主
回答量:60
采纳率:0%
帮助的人:49.5万
展开全部
在许多情况下,在基类中不能对虚函数给出有意义的实现,而把它声明为纯虚函数,它的实现留给该基类的派生类去做。这就是纯虚函数的作用。
纯虚函数可以让类先具有一个操作名称,而没有操作内容,让派生类在继承时再去具体地给出定义。凡是含有纯虚函数的类叫做抽象类。这种类不能声明对象,只是作为基类为派生类服务。除非在派生类中完全实现基类中所有的的纯虚函数,否则,派生类也变成了抽象类,不能实例化对象。

百度百科的资料 选B吧
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
快乐阳光教育G
2012-07-09
知道答主
回答量:3
采纳率:0%
帮助的人:4770
展开全部
B
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式