c++를 포함한 많은 프로그래밍 언어에서 제공하는 조건부 연산자입니다. 간단한 조건문을 한 줄로 작성할 수 있습니다.
조건식 ? 값1 : 값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문은 성능 차이는 거의 없지만, 주로 가독성과 코드 간결성에 영향을 미칩니다.
실제로 복잡한 조건문에서는 if-else가 더 직관적일 수 있지만, 간단한 조건문에서는 삼항 연산자가 더 간결하고 직관적입니다.