这是 C++ 实现在理论上可以并行计算两个函数参数的后续行动吗?
假设我有以下 C++11 程序:
#include <cstdio>
using std::printf;
int g() { printf("1\n"); printf("3\n"); return 2; }
int h() { printf("2\n"); printf("4\n"); return 3; }
void f(int a, int b) { printf("%i\n", a+b); }
int main() { f(g(), h()); }
当然可以观察到以下输出:
1 3 2 4 5
2 4 1 3 5
1 2 3 4 5 呢?
(据我所知,唯一的限制是 1 在 3 之前排序,2 在 4 之前排序,并且 3 和 4 都在 5 之前排序。)