三項演算子を使用しているときに式を返すことができない理由を教えてください。
while( root != nullptr )
{
if( current->data > v ) {
( current->left == nullptr ) ? return false : current = current->left;
} else if( current->data < v ) {
current->right == nullptr ? return false : current = current->right;
} else if( current->data == v ) {
return true;
}
}
return false;
false を返そうとするとエラーが発生するのはなぜですか? 私はこれを行うことができることを理解しています:
return ( ( 0 == 1 ) ? 0 : 1 );
しかし、式の 1 つから戻ろうとしているときのコンパイラの問題は何でしょうか?