if, else로 두 줄 쓸바에 한 줄에 작성하는게 더 보기 좋았고 그냥 그렇게 써오고 있다.if , else if처럼 cmp, jmp해야하는 부분들에 대해선 최적화가 쉽지 않을거같은… 그런… 객관적이지 않고 막연한 환상같은 마음을 품고있었다.#include<cstdio>
#pragma optimize("", off)
int falseFunc() {
printf("falseFunc works!\n");
return 10;
}
#pragma optimize("", on)
int main() {
bool myBool;
int myInt;
int trueValue = 20;
scanf_s("%d", &myBool);
if (myBool) myInt = trueValue;
else myInt = falseFunc();
printf("%d\n", myInt);
myInt = myBool ? trueValue : falseFunc();
printf("%d\n", myInt);
return 0;
myInt = myBool ? trueValue : falseFunc();
00007FF6F2241129 cmp byte ptr [myBool],0
00007FF6F224112E je main+36h (07FF6F2241136h)
00007FF6F2241130 mov eax,dword ptr [trueValue]
00007FF6F2241134 jmp main+3Bh (07FF6F224113Bh)
00007FF6F2241136 call falseFunc (07FF6F22410E0h)
00007FF7A6CD1129 cmp byte ptr [myBool],0
00007FF7A6CD112E je main+36h (07FF7A6CD1136h)
00007FF7A6CD1130 mov eax,dword ptr [trueValue]
00007FF7A6CD1134 jmp main+3Bh (07FF7A6CD113Bh)
else myInt = falseFunc();
00007FF7A6CD1136 call falseFunc (07FF7A6CD10E0h)

우리 착한 코린이들은 그냥 가독성 따라 쓰도록 합시다.
전 그냥 간단한 구문이면 삼항연산자 쓸래요.
잘 보고 갑니다