C++のswitch文に使うbreakの重要性

通常、switch文は下の例のようにcase内にbreakを記述する。

    case 2:
        std::cout << "case 2" << std::endl;
        break;

このbreakは重要な役割を持っていて、例えばcase1のbreakを削除して実行すると

case 1
case 2

となる。これはcase1内にbreakがないため直後のcase2が実行されるためである。

以下実験用コード

#include <iostream>

int main()
{
	int num = 1;
	switch (num) {
		case 1:
			std::cout << "case 1" << std::endl;
		case 2:
			std::cout << "case 2" << std::endl;
			break;
		case 3:
			std::cout << "case 3" << std::endl;
			break;
		default:
			std::cout << "それ以外" << std::endl;
			break;
	}
	return 0;
}

コメント

タイトルとURLをコピーしました