我有以下代码 -
int a= 7;
const int &b = a;
int &c = a;
如果我使用
cout << endl << ++c << '\t' << a << '\t' << b << '\t' << c;
它打印
"8 7 7 8"
但是,如果我使用
cout << endl << a << '\t' << b << '\t' << ++c << '\t' << a << '\t' << b << '\t' << c;
它打印
"8 8 8 8 8 8"
这究竟是怎么发生的?它与优化有关吗?如果是,我如何在 ideone.com 中将其关闭???