“非常量引用的初始值必须为左值”原因分析及解决 清泛原创 2016/11/02 引用变量指向了一个不能取址的值(即左值)导致的,如果地址都没有,怎么可能作为非常量引用的值呢,例如: int& a = 5; //错误 const int& a = 5; //正确 int a = 5; int& b = a; //正确 左值和右值都是针对表达式而言的,左值是指表达式结束后依然存在的持久对象,右值是指表达式结束时就不再存在的临时对象。一个区分左值与右值的便捷方法是:看能不能对表达式取地址,如果能,则为左值,否则为右值。 引用 左值 分享到: 上一篇:MFC CEdit控件自绘、MFC圆角输入框 下一篇:VC中点击任务栏让窗口最小化问题解决