예를 들어 다음과 같은 코드가 있는데요
bool a = true;
(a || false) or (a || false) ? true : false;
위의 bool 판별하는 상황에선 왼쪽이 더 나을까요?
그냥 a를 바로 사용하면 안되는지요?
--
아 저건 그저 떠오르는 예시가 없어서 저렇게 쓴 것 입니다.
제가 말하고자 하는 것은 둘 다 변수이고 나중에 런타임때 값이 계산될 경우에 삼항연산자와 그것마저 사용하지 않는 2가지 경우를 보았는데 각각의 상황이 궁금합니다.
온라인 어셈블러로 넣어보니 둘 다 똑같이 나옵니다. 즉, bool function(bool a, bool b) 일때,
return a || b 이거랑 return (a || b) ? true:false 는 똑같다는 얘기. (아 물론 최적화를 끄면 달라지겠지만 그럴 일은 없겠죠.) 따라서 후자는 쓸 이유가 없는것 같네요.
다만 기본 자료형 bool이 아닌 다른 자료형이라면 출력을 가공하기 위해 사용할 수도 있습니다. 후자를 사용한 코드 예제를 올려주시면 좋을 것 같네요.
그렇군요.
어떤 책에서 초보자를 위해 전자 처럼 썼다고 나와있길래
"그럼 후자는 전문가용인가?"하는 의문에서 질문하게 되었습니다.
결국은 생각대로 아무런 영향이 없군요.
답변 감사합니다.
텍스트 포맷에 대한 자세한 정보
<code>
<blockcode>
<apache>
<applescript>
<autoconf>
<awk>
<bash>
<c>
<cpp>
<css>
<diff>
<drupal5>
<drupal6>
<gdb>
<html>
<html5>
<java>
<javascript>
<ldif>
<lua>
<make>
<mysql>
<perl>
<perl6>
<php>
<pgsql>
<proftpd>
<python>
<reg>
<spec>
<ruby>
<foo>
[foo]
왜 해당 코드를 사용하시려는지가 궁금합니다.
그냥 a를 바로 사용하면 안되는지요?
--
아 저건 그저 떠오르는 예시가 없어서 저렇게 쓴 것
아 저건 그저 떠오르는 예시가 없어서 저렇게 쓴 것 입니다.
제가 말하고자 하는 것은 둘 다 변수이고 나중에 런타임때 값이 계산될 경우에 삼항연산자와 그것마저 사용하지 않는 2가지 경우를 보았는데 각각의 상황이 궁금합니다.
함수 인자 두개와 반환값까지 모두 bool이라면 삼항연산자는 무의미하다 봅니다.
온라인 어셈블러로 넣어보니 둘 다 똑같이 나옵니다. 즉, bool function(bool a, bool b) 일때,
return a || b 이거랑 return (a || b) ? true:false 는 똑같다는 얘기. (아 물론 최적화를 끄면 달라지겠지만 그럴 일은 없겠죠.) 따라서 후자는 쓸 이유가 없는것 같네요.
다만 기본 자료형 bool이 아닌 다른 자료형이라면 출력을 가공하기 위해 사용할 수도 있습니다. 후자를 사용한 코드 예제를 올려주시면 좋을 것 같네요.
--
그렇군요. 어떤 책에서 초보자를 위해 전자 처럼
그렇군요.
어떤 책에서 초보자를 위해 전자 처럼 썼다고 나와있길래
"그럼 후자는 전문가용인가?"하는 의문에서 질문하게 되었습니다.
결국은 생각대로 아무런 영향이 없군요.
답변 감사합니다.
댓글 달기