rt
#include <iostream>
using namespace std;
int a() {return puts("A"),1;}
int b() {return puts("B"),2;}
int main() {
cout << min(a(), b()) << " ";
return 0;
}
输出
B
A
1
由输出可知,此代码会优先运行b()再运行a()
经尝试,似乎如min,max等函数的参数中若有其他函数时,将会从后往前先运行完那些函数,再运行自己。
这些行为背后的原理是什么?还是说这是c++的特性?还请大佬指教。