我有一个字符串&参数,我想将其分配给字符串参数。
怎么做呢。
答案 0 :(得分:1)
void f(string ¶m);
string myString = "something";
f(myString)
这就是你需要的吗?
答案 1 :(得分:0)
一般来说,string&
甚至const string&
只是一个名称别名,如果你在代码中的某个地方有它,它就等于
// This means you just create a new ALIAS named "aliased_string"
// for REAL "real_string"
string& aliased_string = real_string;
现在,只要您使用aliased_string
制作内容,就会直接使用real_string
进行更改。
因此,分配变得非常简单:
// Create a new string
string constructed_string;
// Means the same as "constructed_string = real_string"
constructed_string = aliased_string;
注意,如果你的参数列表中有一些带引用的函数,逻辑保持不变:
void foo (string& aliased_string) { ... }
通常与
相同void foo () { string& aliased_string = real_string }
其中real_string
作为参数传递。
答案 2 :(得分:0)
如果您的意思是重新分配字符串引用,则无法完成
string &stringref = a_string;
stringref = &b_string; // Cannot be done