小编Dan*_*el 的帖子

返回对类数据成员的引用,然后尝试更改该成员

我看过其他文章,但还没有真正了解发生了什么。

所以说我有这个代码:

template<typename T>struct S {
    S(T value):val{value}{}
    T& get(){return val;}
private:
    T val;
};
int main(){
S<int>s1{5};
int n = s1.get();
n = 10;
std::cout<<s1.get();
}
Run Code Online (Sandbox Code Playgroud)

印出:5

我的问题是,为什么当我更改n的值时,如果我返回对val的引用,val的值不会改变?

c++ reference

5
推荐指数
2
解决办法
111
查看次数

标签 统计

c++ ×1

reference ×1