相关疑难解决方法(0)

C++ 17引入了哪些评估顺序保证?

在典型的C++代码中,C++ 17评估顺序保证(P0145)投票的含义是什么?

对于像这样的事情,它有什么变化

i=1;
f(i++, i)
Run Code Online (Sandbox Code Playgroud)

std::cout << f() << f() << f() ;
Run Code Online (Sandbox Code Playgroud)

要么

f(g(),h(),j());
Run Code Online (Sandbox Code Playgroud)

c++ operator-precedence c++17

77
推荐指数
2
解决办法
7130
查看次数

嵌套函数调用评估顺序

众所周知,函数参数的评估顺序未指定,并且可能因不同的编译器而不同.

似乎不太清楚的是函数调用是否可以交错,具体如下:

f(g(h()), i(j()))
Run Code Online (Sandbox Code Playgroud)

让我们假设编译器首先选择评估f的第一个参数.是编译器来电j通话之间hg?我相信,但我不知道在标准中哪里可以找到确认.

c++

7
推荐指数
1
解决办法
2046
查看次数

标签 统计

c++ ×2

c++17 ×1

operator-precedence ×1