33,321
社区成员




#include<iostream>
#include<string>
using namespace std;
class Complex
{
public:
Complex() //默认构造函数
{
p=NULL;
}
Complex(char *str) //构造函数
{
p=str;
}
friend Complex operator+(Complex &s1,Complex &s2);
void display();
private:
char *p;
};
Complex operator + (Complex &s1,Complex &s2)
{
return strcat(s1.p,s2.p);
}
void Complex::display()
{
cout<<p<<endl;
}
int main()
{
Complex s1("Hello"),s2(" World!"),s3;
s3=s1+s2;
s3.display();
return 0;
}
#include <iostream.h>
#include <string>
//using namespace std;
class Complex
{
public:
Complex() //默认构造函数
{
p = NULL;
}
Complex(char *str) //构造函数
{
p = str;
}
friend Complex operator + (Complex &s1, Complex &s2);
void display();
private:
char *p;
};
Complex operator + (Complex &s1, Complex &s2)
{
char *p = (char *)malloc(strlen(s1.p) + strlen(s2.p) + 1);
strcpy(p, s1.p);
strcat(p, s2.p);
return Complex(p);
}
void Complex::display()
{
cout << p << endl;
}
int main()
{
Complex s1("Hello"), s2(" World!"), s3;
s3 = s1 + s2;
s3.display();
return 0;
}
Complex operator + (Complex &s1,Complex &s2)
{
char* p=(char*)malloc(strlen(s1)+strlen(s2)+1);
strcpy(p,s1.p);
strcat(p,s2.p);
return Complex(p);
}