首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >常数reference_wrapper

常数reference_wrapper
EN

Stack Overflow用户
提问于 2014-08-28 08:29:16
回答 1查看 7.4K关注 0票数 8

在下面的代码中,目标是创建一个reference_wrapper<int> b,以便当a更改时,b也会发生变化,但是,不应该允许相反的情况--即当b更改时,a不应该更改。我尝试了两种方法:第7行和第8行。第7行导致编译器抱怨它不能从int转换为const int,而第8行编译时没有问题,但结果不是我想要的(当b更改时,a发生了变化)。有什么想法吗?

代码语言:javascript
复制
1.  #include <iostream>
2.  #include <functional>
3.  using namespace std;
4.  
5.  int main() {
6.      int a = 1;
7.      //reference_wrapper<const int> b = ref(a);
8.      //const reference_wrapper<int> b = ref(a);
9.  return 0;
10. }
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-08-28 08:34:40

cref可以检索一个常量引用。

代码语言:javascript
复制
#include <iostream>
#include <functional>
using namespace std;

int main() {
    int a = 1;
    reference_wrapper<const int> b = cref(a);
    return 0;
}
票数 11
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25544219

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档