我在弄乱代码时遇到了这种相当模糊的行为,这是示例:
#include <iostream>
using namespace std;
int print(void);
int main(void)
{
cout << "The Lucky " << print() << endl; //This line
return 0;
}
int print(void)
{
cout << "No : ";
return 3;
}
在我的代码中,带有注释的语句//This line
应该打印出来
The Lucky No : 3
,而是打印出来No : The Lucky 3
。是什么导致了这种行为?这是否与 C++ 标准有关,或者它的行为因一个编译器而异?