【发布时间】:2015-09-14 08:59:18
【问题描述】:
假设我有这个代码:
int i = 2;
int &ref = i++;
现在,我知道引用不能用右值初始化,
但我不明白为什么ref 没有用左值初始化,这里的意思是i,然后i 递增。
此外,在以下情况下:
int i = 2;
const int &ref = i++;
cout << ref << endl;
2 将被打印出来,这意味着ref 在递增之前用i 初始化,即用lval 初始化。
之后ref 递增,但ref 为常量。
有人可以解释一下我在这里缺少什么吗?
【问题讨论】:
标签: c++ reference post-increment