我有以下结构定义和一个特定的用例:
struct foo
{
bool boo;
};
int main()
{
foo* f = 0;
.
.
.
if ((f) && (f->boo)) // <--- point of contention
return 0
else
return 1;
}
标准是否保证上面 if 语句中的第一组大括号总是在第二组之前被评估?
如果它不是最好的重写上面的代码位是什么?
目前我有以下混乱:
if (f)
{
if (f->boo)
return 0;
else
return 1;
}
else
return 1;