c++ - 为什么函数参数求值不能排序?

标签 c++ function arguments standards evaluation

据我们所知,c++ 标准并未定义函数参数求值顺序。
例如:

 f(g(), h());

所以我们知道它是未定义的。
我的问题是,为什么 C++ 标准不能定义从左到右的求值顺序?

最佳答案

因为没有充分的理由这样做。

C++ 标准通常只定义必要的内容,其余部分由实现者决定。

这就是为什么它可以生成快速代码并且可以针对许多平台进行编译的原因。

关于c++ - 为什么函数参数求值不能排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50062906/

相关文章:

c++ - 禁用 boost 的 `progress_display` 输出

javascript - 为什么这个while循环会使浏览器崩溃?

C - 无法将 1 个参数从 int 转换为 int[][4]

php - 调用参数不足的 PHP 函数有什么规则?

c++ - 带有子类的类的纯接口(interface)

函数中的冲突类型

python - 中断外部循环 Python 函数其他选项

database - Nlog 以编程方式设置数据库目标并访问自定义日志消息属性

c - 添加作为参数给出的分数 C

c++ - 查询如何清除派生类对象的内存