#include <iostream>
class door
{
public:
virtual void setname(char*peo_name) = 0;
virtual void setname() = 0;
virtual char*getname() = 0;
};
class bitch:public door
{
private:
char name[20];
};
void bitch::setname()
{
}
请问纯虚函数继承后子类不可以在子类外实现函数吗这段代码错了
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- zhaojia92 2016-06-10 14:56关注
对于抽象基类中的纯虚函数,要求子类在继承后必须实现。
子类重写基类方法的必要过程有:
1、子类声明基类函数的形式。
2、子类实现函数体。上面的定义中,子类没有声明函数setname()就重写,则C++编译器默认setname来自基类继承方法。
修改方法为:
class bitch:public door
{
private:
char name[20];
public:
void setname(char*peo_name);
void setname();
char* getname() ;
};然后全部实现三个虚函数。
要重写或覆盖的方法,只有先声明,后才能实现。实现既可以在类声明内部,也可以在类声明外部。解决 1无用
悬赏问题
- ¥15 微信公众号自制会员卡没有收款渠道啊
- ¥15 stable diffusion
- ¥100 Jenkins自动化部署—悬赏100元
- ¥15 关于#python#的问题:求帮写python代码
- ¥20 MATLAB画图图形出现上下震荡的线条
- ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
- ¥15 perl MISA分析p3_in脚本出错
- ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
- ¥15 ubuntu虚拟机打包apk错误
- ¥199 rust编程架构设计的方案 有偿