我觉得这个答案会快速而简单,但我现在似乎无法解决这个问题。
#include <string>
#include <iostream>
using namespace std;
void change_thing (string x) {
x="not thing";
}
int main() {
string maybe_thing;
maybe_thing="thing";
change_thing(maybe_thing);
cout << maybe_thing << endl;
return 0;
}
我希望 maybe_thing
在打印时“不是东西”。我已经尝试了一堆不同的指针策略,但似乎没有任何工作(我可能很容易就是做错了;无论如何我对指针的知识都是不完整的,因为我是c ++的新手。)
提前致谢!
答案 0 :(得分:2)
您不需要指针,只需pass the string by reference:
void change_thing (string & x) {
x="not thing";
}