c ++使用每个元素引用初始化数组?
c++ initialize array with each element reference?
我是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++初学者,我想初始化一个数组,让数组的元素实际上是对变量的引用。
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
下面所做的)。