2. 定义一个字符串类STRING,并为该类设计重载的“+” 运算符,实现两个字符串的连接,设计重载的

2025-03-01 15:06:20
推荐回答(1个)
回答1:

class STRING{
public:
vector data;
unsigned size()const{return data.size();}
STRING(){}
STRING(const STRING&r):data(r.data){}
STRING(const char *pch){
while(pch&&*pch){
data.push_back(*pch);
++pch;
}
}
STRING&operator=(const STRING&r){
if(this!=&r){
data.clear();
for(auto ch:r.data){
data.push_back(ch);
}
}
STRING operator+(const STRING&r)const{
STRING ret(*this);
for(auto ch:r.data){
ret.data.push_back(ch);
}
return ret;
}
bool operator(const STRING&r)const{
if(this==&r)return true;
if(data.size()!=r.data.size())return false;
for(unsigned i=0;i if(data[i]!=r.data[i]){
return false;
}
}
}

};