运算符重载——重载赋值运算符=用于字符串赋值
来源:互联网 发布:淘宝野马软件 编辑:程序博客网 时间:2024/06/07 18:55
题目:
运算符重载——重载赋值运算符=用于字符串赋值
Time/Memory Limit:1000 MS/32768 K
Submitted: 72 Accepted: 44
Submitted: 72 Accepted: 44
Problem Description
定义一个字符串类,该类包括一个字符型指针数据成员,构造函数、析构函数、显示字符串函数,以及重载=运算符函数(用于字符串赋值)。在主函数中对字符串对象的赋值运算进行测试。
Input
输入数据有多行,每行包括一个字符串。
Output
输出有多行,对应每个输入数据要求输出两行,第一行是该输入的字符串对象,第二行是定义另一个对象进行赋值运算,将第一个对象赋值给第二个对象。
Sample Input
Hello!530 i think you!
Sample Output
Hello!Hello!530 i think you!530 i think you!
参考代码:
#include <iostream>
#include <string>
using namespace std;
class STRING{
private:
char *ch;
public:
STRING(char *c="NULL");
STRING(STRING &);
~STRING();
STRING& operator=(const STRING &);
void show();
};
STRING::STRING(char *c){
ch=new char[strlen(c)+1];
strcpy(ch,c);
}
STRING::STRING(STRING &c){
ch=new char[strlen(c.ch)+1];
strcpy(ch,c.ch);
}
STRING::~STRING(){
delete []ch;
}
STRING& STRING::operator=(const STRING &c){
if(this==&c)
return *this;
delete []ch;
ch=new char[strlen(c.ch)+1];
strcpy(ch,c.ch);
return *this;
}
void STRING::show(){
cout<<ch<<endl;
}
int main()
{
char c[21];
while(gets(c))
{
STRING x(c),y;
x.show();
y=x;
y.show();
}
return 0;
}
- 运算符重载——重载赋值运算符=用于字符串赋值
- 字符串 赋值运算符 重载
- 重载赋值运算符
- 重载赋值运算符
- 重载赋值运算符
- 重载赋值运算符
- 重载赋值运算符
- 重载赋值运算符
- 赋值运算符重载
- 赋值运算符重载
- 重载赋值运算符
- 重载赋值运算符
- 赋值运算符重载
- 赋值运算符重载
- 重载赋值运算符
- 重载赋值运算符=
- C++赋值运算符重载
- C++ 重载赋值运算符
- shell编程——getopts
- IE下div使用margin:0px auto不居中的原因
- 移动硬盘提示格式化的处理
- 使用C#实现顺序队列
- Spring MVC学习(三)-------DispatcherServlet详解
- 运算符重载——重载赋值运算符=用于字符串赋值
- Linux常用命令大全
- 优秀IT技术文章集(最新)(高质量)
- UPnP中Control Point的基本流程
- ROMANS.ROMANC字体编码
- OWI自学随笔 OWR常用视图与优化核心
- iOS开发——生命周期
- iOS编程技巧总结之语音篇 一
- 如何修改java执行内存