12
12

선택문의 특징은 조건에 따라 맞으면 실행하고, 그렇지 않으면 지나갑니다.

if~else 먼저 살펴봅시다

if (condition) { 
    // write your own code when the condition is satisfied 
    // 조건에 맞을 때 실핼할 코드를 쓰세요
    std::cout << “It is true!!\n”; 
}

condition에 알맞으면 아래 "It is true"가 실행되는 코드입니다.

만약에 실행할 내용이 둘 이상이라면, 복합 명령문으로 코드를 짜야합니다.
If the action is more than one, you must put your actions
in a compound statement to execute sequentially

예시)

if (condition) {
    std::cout << “It is true!!\n”; 
} else {
    std::cout << “It is false…\n”; 
}

condition에 만족하면 "It is true!!"가 출력이되고
만족하지 않으면 지나가고 바로 "It is false..."가 출력되게 됩니다.

이번엔 switch~case를 살펴봅시다

switch (expression) { 
    case alter_1 : statement_1; 
        break;
    case alter_2 : statement_2;
        break;
         ... 

    default statement_d; 
    break; 
}

가장 큰 특징은 expression에는 무조건 단일 값이고, 유형은 int 또는 char만 가능합니다.
Expression is a single value and the type can be either int or char

각 case 뒤에 세미클론(;)까지 단일 값이 될 수 있는 값을 써주면
switch의 expression의 값이 각 case 값일 때 각각 break; 부분까지 코드를 실행합니다.

 

알맞는게 없으면 default: 부분의 내용을 break;까지 실행하게 됩니다.

switch~case는 언제 씀?

보다시피 switch case는

if else랑 똑같습니다.
다만 차이점은 더 눈에 잘 들어오고 조건문이 엄청 많아질수록 성능이 if else보단 좋다고 합니다.

(어차피 엄청 큰 차이는 아니지만..)

 

그래서 조건문이 너무 많으면 switch~case로 코드를 정리하면 좋습니다.

'그냥 개발글 > C++' 카테고리의 다른 글

객체  (0) 2023.12.12
const 키워드  (0) 2023.12.12
연산자  (0) 2023.12.12
반복문 (while, do - while, for)  (0) 2023.12.12
COMMENT