关于C++中字符串的修改

#include <iostream>
#include <string>

using namespace std;

int main()
{
	string a = "mebius";
	cout << a.length() << endl;//输出mebius
	string b = a.append("&gaia");
	cout << b<< endl;//输出mebius&gaia
	cout << a<<endl;//输出mebius&gaia
}

大佬们,C++学习新人,想知道C++中字符串的改动对于整个字符串的影响,如代码,a.函数()是将a整个修改掉了吗,如果是这样,我要如何找到原来的a呢?谢谢大佬们

a.append()函数后,a的值被修改掉了。如果想找回a,可以采用如下方式:

string c = a; //c暂存a

string b = a.append("&gala");

a = c; //还原a的值

这样就还原回来了。如有帮助,请采纳一下,谢谢。

代码中a.append  是向字符串a后面追加一串字符串;所以a的值也会改变;如果要找到原来的a  可以新建一个字符串变量C,将a的值赋值给新的变量C,复制完之后再调用append函数,这样C里面就保留了原先a的值

你在复制a之前可以将 a的值赋值给一个临时变量作为临时存储,之后再对a进行赋值。