我是一个c++初学者,我想初始化一个数组,让数组的元素实际上是对一个变量的引用。
string string_1;
string string_2;
string strings[2] = {&string_1, &string_2};
这是允许的吗?那么对数组所做的任何操作都将应用于变量 string_1
和 string_2
本身?
最佳答案
你可以模拟一个引用数组:
using s_ref = std::reference_wrapper<std::string>;
s_ref strings[] = { std::ref(string_1), std::ref(string_2) };
或者只使用指针(这正是 reference_wrapper
在下面所做的)。
关于c++使用每个元素引用初始化数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46557671/