#include <iostream>
using namespace std;
class String
{
public :
String();
String(char* str);
String operator+(String s);
friend ostream& operator<<(ostream& output, String& s);
char* str;
}; String::String(char* str)
{
this->str = str;
}
ostream& operator<<(ostream& output, String& s)
{
output<<s.str;
return output;
}
String String::operator +(String s2)
{
int length1 = sizeof(this->str);
int length2 = sizeof(s2.str);
int length = length1 + length2; char* c = new char[length];
c = " "; for(int i=0; this->str[i] != '\0';i++)
{
c[i] = this->str[i];
} int j = 0;
while(s2.str[j] != '\0')
{
c[i] = s2.str[i];
j++;
i++;
}
c[i] = '\0';
return String(c);
} int main()
{
String s1("123"),s2("456"),s3;
s3 = s1+s2;
std::cout<<s1;
return 0;
}
using namespace std;
class String
{
public :
String();
String(char* str);
String operator+(String s);
friend ostream& operator<<(ostream& output, String& s);
char* str;
}; String::String(char* str)
{
this->str = str;
}
ostream& operator<<(ostream& output, String& s)
{
output<<s.str;
return output;
}
String String::operator +(String s2)
{
int length1 = sizeof(this->str);
int length2 = sizeof(s2.str);
int length = length1 + length2; char* c = new char[length];
c = " "; for(int i=0; this->str[i] != '\0';i++)
{
c[i] = this->str[i];
} int j = 0;
while(s2.str[j] != '\0')
{
c[i] = s2.str[i];
j++;
i++;
}
c[i] = '\0';
return String(c);
} int main()
{
String s1("123"),s2("456"),s3;
s3 = s1+s2;
std::cout<<s1;
return 0;
}