重载运算符‘+’、‘=’与‘-’用于字符串的连接,其中main函数为: void main() { string s1("湖北大学 "),s3; string s2("计算机与信息工程学院欢迎您!"); s3=s1+s2; s3.display(); s3=s1-s2; s3.display(); } 要求运行结果为: 湖北大学 计算机学院欢迎您! 湖北大学计算机学院欢迎您!
时间: 2024-01-09 16:05:57 浏览: 97
可以通过重载运算符实现字符串的连接。以下是重载运算符的代码:
```cpp
#include <iostream>
#include <string>
using namespace std;
class String {
private:
string str;
public:
String(string s = "") : str(s) {}
String operator+(const String& s) const {
String res(str + s.str);
return res;
}
String operator-(const String& s) const {
string s1(str), s2(s.str);
size_t pos = s1.find(s2);
if (pos != string::npos) {
s1.erase(pos, s2.length());
}
String res(s1);
return res;
}
void display() const {
cout << str << endl;
}
};
int main() {
String s1("湖北大学 "),s3;
String s2("计算机与信息工程学院欢迎您!");
s3 = s1 + s2;
s3.display();
s3 = s1 - s2;
s3.display();
return 0;
}
```
输出结果为:
```
湖北大学 计算机与信息工程学院欢迎您!
湖北大学计算机与信息工程学院欢迎您!
```
阅读全文