有没有在VS C++ 2017年的任何选项,这样,当它建立了下面的程序都f()与g()被称为?
#include <iostream>
using namespace std;
bool f()
{
cout << "f" "\n";
return true;
}
bool g()
{
cout << "g" "\n";
return false;
}
int main()
{
if (f() || g())
cout << "hello";
cin.ignore(1);
}
Run Code Online (Sandbox Code Playgroud)
Mur*_*nik 10
短路评估是语言规范的一部分.你不能把它关掉.您可以改为分配f()和g()调用变量,然后评估它们:
bool f_ret = f();
bool g_ret = g();
if (f_ret || g_ret)
cout << "hello";
Run Code Online (Sandbox Code Playgroud)