帮忙修改一下程序,我菜鸟一个

映维网 2008-03-21 11:26:57
#include<iostream.h>
#include<string.h>
class jia
{
public:
jia(char stl[5]);
jia operator+(jia );
void show();
private:
char str[5];
};
jia::jia(char stl[5])
{
strcpy(str,stl);
}
jia jia::operator+(jia)
{
jia A,B;
return strcat(A.str,B.str);

}
void jia::show()
{
cout<<str<<endl;
}
void main()
{
jia A="abcd";
jia B="efgh";
A.show();
B.show();
(A+B).show();
}
...全文
58 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
HelloDan 2008-03-21
  • 打赏
  • 举报
回复

#include<iostream>
#include<string>
#include<cstring>

using namespace std;

class jia
{
public:
jia(char *stl)
{
strncpy(str,stl,4);
str[4]='\0';
}
//jia operator+(const jia & );
void show();
private:
char str[5];
};

/*
jia jia::operator+(jia) //这个你分配好空间了,不宜这样做。
{
jia A,B;
return strcat(A.str,B.str);

}
*/
void jia::show()
{
cout <<str <<endl;
}


int main()
{
jia A="abcd";
jia B="efgh";
A.show();
B.show();
//(A+B).show();

return 0;
}

lzy340623339 2008-03-21
  • 打赏
  • 举报
回复

#include <string.h>
class jia
{
public:
jia(char stl[5]);
char* operator+(jia B);
void show();
private:
char str[5];
};
jia::jia(char stl[5])
{
strcpy(str,stl);
}
char* jia::operator+(jia B)
{
return strcat(str,B.str);

}
void jia::show()
{
cout <<str <<endl;
}
void main()
{
jia A("abcd");
jia B("efgh");
A.show();
B.show();
cout<<A+B<<endl;
}
ryfdizuo 2008-03-21
  • 打赏
  • 举报
回复

//勉强是可以了,
#include <iostream>
#include <string.h>
using namespace std;

class jia
{
public:
jia(){}
jia(char stl[5]);
jia operator+(jia );
void show();
private:
char str[5];
};
jia::jia(char stl[5])
{
strcpy(str,stl);
}
jia jia::operator+(jia)
{
jia A,B;
return strcat(A.str,B.str);

}
void jia::show()
{
cout <<str <<endl;
}
void main()
{
jia A="abcd";
jia B="efgh";
A.show();
B.show();
(A+B).show();
}

64,995

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧