C++改错题,下面这个程序哪里出错了?应该怎么改?#include#includeclass CBase{protected:char *ch;public:CBase(char *x){ch=new char[20];strcpy(ch,x);}virtual void fun()=0;virtual void fun1(){cout

来源:学生作业帮助网 编辑:作业帮 时间:2024/06/30 22:08:12
C++改错题,下面这个程序哪里出错了?应该怎么改?#include#includeclass CBase{protected:char *ch;public:CBase(char *x){ch=new char[20];strcpy(ch,x);}virtual void fun()=0;virtual void fun1(){cout
xSoO@* (n/^ԣM4u.# (dC"L2۬Nb痹;W~]DI%M{?yzOT/Β֛nw7u8تǮVE;U\Vѿ627辅'SjaeI+ PD2rbcBY/O>&}\Y*;2)KN29 ?){kd;góArm,^Uxݡk|' .pIw{=8LѰVST7H˜ b&;#} ȨE'+{XoӵKc27I' nc|J~P~zG Uo5R*(+Ljluab\ۦag`*  r˼,q̭kƹa"0qq ĸ?n

C++改错题,下面这个程序哪里出错了?应该怎么改?#include#includeclass CBase{protected:char *ch;public:CBase(char *x){ch=new char[20];strcpy(ch,x);}virtual void fun()=0;virtual void fun1(){cout
C++改错题,下面这个程序哪里出错了?应该怎么改?
#include
#include
class CBase{
protected:
char *ch;
public:
CBase(char *x)
{
ch=new char[20];
strcpy(ch,x);
}
virtual void fun()=0;
virtual void fun1()
{cout

C++改错题,下面这个程序哪里出错了?应该怎么改?#include#includeclass CBase{protected:char *ch;public:CBase(char *x){ch=new char[20];strcpy(ch,x);}virtual void fun()=0;virtual void fun1(){cout
CBase中含有virtual void fun()=0; 是抽象类,是不能创建对象的.
你的头文件写法不规范,在新的c++标准中是错误的.
main函数写法也是错误的.
并且基类和派生类都应该定义拷贝构造函数,而你没有定义.
另外注意不要把const char* 隐转换为char*
修改后的代码:
#include
#include
#include
using namespace std;
class CBase
{
protected:
char *ch;
public:
CBase(const char *x)
{
ch = new char[20];
strcpy(ch,x);
}
virtual void fun() {};
virtual void fun1()
{
cout