在下面的代码中,我们的目标是reference_wrapper<int> b
,以便a
更改时,b
也会发生变化,但不应允许相反,{{1} a
更改时不应更改。我尝试了两种方法:第7行和第8行。第7行导致编译器抱怨它无法从b
转换为int
,而第8行编译没有问题,但结果不是我想要的({{1 } const int
更改时更改。有什么想法吗?
a
答案 0 :(得分:6)
可以通过cref
检索常量引用。
#include <iostream>
#include <functional>
using namespace std;
int main() {
int a = 1;
reference_wrapper<const int> b = cref(a);
return 0;
}