http://1st.gamecodi.com/board/zboard.php?id=GAMECODI_Talk&no=13895
삼항연산자 쓰세요-ㅅ-?
한번도 써본적이없어서...당췌 왜만든지를 모르겠어요.
1st.gamecodi.com
좋은 질문인것 같고 좋은 답변도 있어서 가져왔습니다.
안좋은예:
//삼항연산자
int round(float f)
{
return (f - 0.5 > static_cast<int>(f)) ? static_cast<int>(f + 1.0) : static_cast<int>(f);
}
//if else 문
int refill_hp(int hp)
{
/*
if (hp > 100)
return hp;
else
return 100;
*/
return (hp > 100) ? hp : 100;
}
좋은 예:
//삼항연산자
int nLevel = pTest?pTest->Level:0;
//if else 문
int nLevel;
if( pTest != NULL )
{
nLevel = pTest->Level;
}
else
{
nLevel = 0;
}
체인된 삼항연산자는 if 문과 비교해 몇 가지 장점이 있습니다.
- 항상 위에서 아래로 일직선으로 읽을 수 있도록 작성하는 것이 좋습니다. 직선을 따라 읽으면 체인된 삼항식을 무리없이 읽을 수 있습니다.
- 삼항 연산자는 구문의 혼란을 줄입니다. 적은 코드 = 버그가 적은 표면 = 버그가 적습니다.
- 삼항 연산자는 임시 변수를 필요로하지 않으므로 단기기억력의 부하가 줄어 듭니다.
- 삼항식은 신호 대 잡음비가 더 좋습니다.
- if문은 부수작용과 변이를 권장하지만, 삼항연산자는 순수한 코드를 권장합니다.
- 순수한 코드는 표현과 기능을 서로 분리시킴으로써 우리가 더 나은 개발자가 될 수 있도록 합니다.
https://tpgns.github.io/2018/04/24/nested-ternaries-are-great/
삼항연산자의 멋짐을 모르는 당신이 불쌍해 - mido
이 글은 Eric Elliott 이 medium에서 연재하는 Composing Software 시리즈를 번역한 것입니다. [원문보기] Smoke Art Cubes to Smoke — MattysFlicks — (CC BY 2.0) 참고 : 이 글은 JavaScript ES6+의 함수형 프로그래밍
tpgns.github.io
'끄적이기' 카테고리의 다른 글
깃 관리 (0) | 2022.07.12 |
---|---|
if else문 , switch문 사용해야할때 (0) | 2021.10.27 |
싱글턴 패턴의 위험성! (0) | 2021.10.27 |
const를 사용하는 이유 (0) | 2021.10.27 |
추상 클래스, 인터페이스 사용 이유 (0) | 2021.10.27 |