'C++' Ternary operator

토스트·2024년 12월 8일
0

'C++' basic

목록 보기
3/35

삼항 연산자(Ternary operator)

c++를 포함한 많은 프로그래밍 언어에서 제공하는 조건부 연산자입니다. 간단한 조건문을 한 줄로 작성할 수 있습니다.

조건식 ? 값1 : 값2;

  • 조건식이 true일 경우 값1이 반환 되고, false일 경우 값2가 반환이 됩니다.

삼항 연산자 예시

#include <iostream>
using namespace std;

int getMax(int a, int b) { // a, b 중 더 큰 수를 반환하는 함수로, 따로 호출은 하지 않았습니다.    
    return (a > b) ? a : b;
}

int main() {
    int a = 5, b = 10;

    // 삼항 연산자 사용
    int max_value = (a > b) ? a : b;

    cout << "더 큰 값은: " << max_value << endl;  // 출력: 더 큰 값은: 10

    return 0;
}

if-else문으로 작성했을 시

#include <iostream>
using namespace std;

int getMax(int a, int b) { // a, b 중 더 큰 수를 반환하는 함수로, 따로 호출은 하지 않았습니다.    
    if (a > b) return a;
    else return b;
}

int main() {
    int a = 5, b = 10;

    int max_value;
    
    if (a > b) max_value = a;
    else max_value = b;

    cout << "더 큰 값은: " << max_value << endl;  // 출력: 더 큰 값은: 10

    return 0;
}

if-else VS Ternary operator

삼항 연산자와 if-else문은 성능 차이는 거의 없지만, 주로 가독성과 코드 간결성에 영향을 미칩니다.
실제로 복잡한 조건문에서는 if-else가 더 직관적일 수 있지만, 간단한 조건문에서는 삼항 연산자가 더 간결하고 직관적입니다.

0개의 댓글