6

次のコードでは、目的は、変更reference_wrapper<int> b時にa変更bも変更されるようにすることですが、その反対は許可されるべきではありaません。つまり、変更時にb変更されるべきではありません。行 7 と行 8 の 2 つの方法を試しました。行 7 では、行 8 が問題なくコンパイルされている間、コンパイラは からintに変換できないと不平を言いましたが、結果は私が望んでいたものではありませんでした (変更時に変更されました)。何か案が?const intab

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. }
4

1 に答える 1

11

で定数参照を取得できますcref

#include <iostream>
#include <functional>
using namespace std;

int main() {
    int a = 1;
    reference_wrapper<const int> b = cref(a);
    return 0;
}
于 2014-08-28T08:34:40.627 に答える