小编pee*_*eto的帖子

有没有办法改变 std::pair 的引用成员指向的位置?

因此,一旦std::pair初始化了至少一个引用变量,例如像这样:

int a = 53;
int b = 42;
std::pair<int, int&> foo(33, a);
Run Code Online (Sandbox Code Playgroud)

有没有办法改变引用变量的指向?

任务:

foo = std::make_pair(33, std::ref(b));
Run Code Online (Sandbox Code Playgroud)

和交换:

std::pair<int, int&> bar(33, b);
foo.swap(bar);
Run Code Online (Sandbox Code Playgroud)

似乎只是将新内容移动到a并留下foo指向它之前 ( a)位置的第二个成员,因此没有做我在这里试图实现的目标。我知道引用不能像这里回答的那样反弹 ,但这不是我在这里想要做的。我想要做的是制作一对新的并将其内容分配给现有的,这在技术上不是一回事。

提前致谢!

c++

3
推荐指数
1
解决办法
89
查看次数

标签 统计

c++ ×1