帮忙写一段重载+号来连接字符串的代码!!感激不尽!

yc406740872 2008-12-26 09:28:45
各位哥哥姐姐,小弟是C++初学者,学习中遇到一点小问题,就是不会用重载+号来连接字符串,请你们为你写一段代码让我参考一下!!在此小弟感激不尽!
...全文
130 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
lockhall 2008-12-26
  • 打赏
  • 举报
回复
我记得是左操作数要是string的才可以+
[Quote=引用 3 楼 xiaoyisnail 的回复:]
+左右操作数至少得有一个是string,就能直接用了
[/Quote]
lbh2001 2008-12-26
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 nullah 的回复:]
string有重载的+
[/Quote]

但也只是重载了有限的几种,还有很多的类型不能用在string的+运算符
wiowei 2008-12-26
  • 打赏
  • 举报
回复
char*你就用strcat()来连吧。不过要自己检查越界。
最简单的就是把字符串都用string来处理,非string类型的就转换成string呗。。
lann64 2008-12-26
  • 打赏
  • 举报
回复
你是个什么格式的字符串先得说说吧,把你的字符串定义贴出来。
xiaoyisnail 2008-12-26
  • 打赏
  • 举报
回复
+左右操作数至少得有一个是string,就能直接用了
就呆在云上 2008-12-26
  • 打赏
  • 举报
回复


string可以+的啊
单独的char*是不能重载+操作符的
nullah 2008-12-26
  • 打赏
  • 举报
回复
string有重载的+
lann64 2008-12-26
  • 打赏
  • 举报
回复
纯属脱了裤子放屁。
primer001 2008-12-26
  • 打赏
  • 举报
回复
楼上的重载函数要返回引用的,才能连续的+
artwl_cn 2008-12-26
  • 打赏
  • 举报
回复

#include <iostream>
#include <string>
using namespace std;
class test
{
public:
string a;
public:
test(string b){a=b;}
friend string operator+(test);
};
string operator+(string c,test a)
{
c=c+a.a;
return c;
}
void main()
{
test d("world!");
string s="Hello ";
s=s+d;
cout<<s<<endl;
}

64,633

社区成员

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

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