삼항 조건의 결과에서 방법을 사용하는 것은 나쁜 스타일로 간주됩니까? 의 라인을 따라 뭔가 :삼항 조건의 결과에 대한 방법
(node->parent()->left() == node ? node->parent()->left()
: node->parent()->right()).reset();
내가 그 코드 스타일은 주관적 일 수 있습니다 알고 있어요,하지만 난 여전히 그것을 사용하거나 오히려 같은 것을 작성하는 것처럼 좀 추천을받을 수 있기를 바랍니다 :
if (node–>parent()–>left() == node) {
node->parent()->left().reset()
} else {
node–>parent()->right().reset()
}
을 무엇에 대해 (코멘트에서)
:
auto& childUnq = node->parent()->left() == node ? node->parent()->left()
: node->parent()->right();
childUnq.reset();
왜 마지막 두 피연산자가 같은지, 처음에는 삼항 연산자가 필요하지 않습니다. – stackptr
@stackptr 제 잘못, 우연히 같은 것을 다시 작성했습니다. – Davar
조건부의 결과를 변수에 저장할 수도 있습니다. 당신은 'auto'로 타입을 철자조차하지 않아도됩니다. – chris