考虑
auto a = 0;
std::cout << a;
std::cout << a++;
std::cout << ++a;
std::cout << std::endl;
输出: 002
关于帖子和预增量规则的预期。
但是以下代码
auto a = 0;
std::cout << a << a++ << ++a << std::endl;
输出: 212
由于以下内容似乎按正确的顺序打印数字
auto a = 0;
auto b = 1;
auto c = 2;
std::cout << a << b << c << std::endl;
输出: 012
我想弄清楚为什么我在第二种情况下得到212?
完整代码在此处:https://ideone.com/IUiFb6