VC++程序,一个关于字符串小题目
/*1.6定义一个字符显示类CStrone,包含一个存放字符数据的成员,能够通过构造函数初始化字符串,通过成员函数显示字符串的内容,在此基础上派生出CStrTwo类,增加...
/*1.6定义一个字符显示类CStrone,包含一个存放字符数据的成员,能够通过构造函数初始化字符串,通过成员函数显示字符串的内容,
在此基础上派生出CStrTwo类,增加一个存放字符串的数据成员,并通过派生的构造函数传递参数,初始化两个字符串,
通过成员函数进行两个字符串的合并以及输出(字符串的合并可以使用标准库函数strcat,需要头文件string.h)*/
#include<iostream.h>
#include<string.h>
class CStrone
{
public:
CStrone(char *pointer)
{
strcpy(string1,pointer);
}
void display()
{
cout<< string1<<endl;
}
protected://这个换成private就不对了
char string1[10];
};
class CStrtwo: public CStrone
{
public:
CStrtwo(char *pointer,char *pointer1):CStrone( *pointer)
{ //运行时总是说这一行有错误,很奇怪
strcpy(string2,pointer1);
}
void cat_display()
{
strcat(string2,CStrone::string1);
cout<< string2<<endl;
}
private:
char string2[20];
};
void main()
{
char str1[]="hello,";
char str2[]="nice to meet you";
CStrone strone(str1);
CStrtwo strtwo(str1,str2);
strtwo.cat_display();
} 展开
在此基础上派生出CStrTwo类,增加一个存放字符串的数据成员,并通过派生的构造函数传递参数,初始化两个字符串,
通过成员函数进行两个字符串的合并以及输出(字符串的合并可以使用标准库函数strcat,需要头文件string.h)*/
#include<iostream.h>
#include<string.h>
class CStrone
{
public:
CStrone(char *pointer)
{
strcpy(string1,pointer);
}
void display()
{
cout<< string1<<endl;
}
protected://这个换成private就不对了
char string1[10];
};
class CStrtwo: public CStrone
{
public:
CStrtwo(char *pointer,char *pointer1):CStrone( *pointer)
{ //运行时总是说这一行有错误,很奇怪
strcpy(string2,pointer1);
}
void cat_display()
{
strcat(string2,CStrone::string1);
cout<< string2<<endl;
}
private:
char string2[20];
};
void main()
{
char str1[]="hello,";
char str2[]="nice to meet you";
CStrone strone(str1);
CStrtwo strtwo(str1,str2);
strtwo.cat_display();
} 展开
2个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询