首页 > 试题广场 >

下列关于纯虚函数与抽象类的描述中,错误的是()?

[单选题]

下列关于纯虚函数与抽象类的描述中,错误的是()?

  • 纯虚函数是一种特殊的函数,它允许没有具体的实现
  • 抽象类是指具有纯虚函数的类
  • 一个基类的声明中有纯虚函数,该基类的派生类一定不再是抽象类
  • 抽象类只能作为基类来使用,其纯虚函数的实现由派生类给出
说明:如果在抽象类的派生类中没有重新说明纯虚函数,则该函数在派生类中仍然为纯虚函数,而这个派生类仍然还是一个抽象类。
编辑于 2018-05-23 17:08:47 回复(0)
更多回答
推荐
一个基类的说明中有纯虚函数,该基类的派生类一定不再是抽象类:该基类的派生类必须覆盖虚函数,这个函数才不是抽象类,所以C错。
关于D,本质上是没啥问题的,抽象类由于有纯虚函数只能作为基类来使用,其纯虚函数的实现由派生类给出。
编辑于 2018-05-23 17:13:26 回复(1)
纯虚函数可以继承,但是如果派生类没有实现,那派生类也是抽象类
发表于 2019-08-24 13:19:52 回复(0)
只要纯虚数没在派生类定义,那么就可以一直继承下去当纯虚数
发表于 2022-04-24 08:50:33 回复(0)
C
发表于 2021-09-28 11:31:10 回复(0)

A. 纯虚函数是一种特殊的函数,它允许没有具体的实现。定义一个纯虚函数的语法是在函数声明后面加上 =0,例如 virtual void func() = 0;

B. 抽象类是指具有纯虚函数的类。抽象类不能被直接实例化,只能作为基类来使用。由于抽象类中包含了至少一个纯虚函数,而纯虚函数没有具体的实现,所以不能创建该类的对象。

C. 一个基类的声明中有纯虚函数,该基类的派生类不一定不再是抽象类。如果派生类没有提供纯虚函数的实现,或者实现的方式不满足纯虚函数的要求,那么派生类仍然是抽象类。只有当派生类实现了所有的纯虚函数之后,才可以创建派生类的对象。

D. 抽象类只能作为基类来使用,其纯虚函数的实现由派生类给出。派生类必须实现基类中所有的纯虚函数,否则派生类也会变成抽象类。

发表于 2023-10-20 21:30:34 回复(0)

抽象类包含纯虚函数,我们把只能被继承,不能定义对象的类称为抽象类

发表于 2020-03-07 11:09:30 回复(0)
如果在派生类中没有对纯虚函数进行了定义,那这个派生类也是抽象类.不能用来定义对象
发表于 2019-06-25 19:54:11 回复(0)