#include<bits/stdc++.h>
using namespace std;
void show(int errorCause)
{
switch(errorCause)
{
case 1:
{
cout<<"in 1\n";
break;
}
case 2: break;
case 3:
{
cout<<"in 3\n";
break;
case 4:
{
cout<<"in 4\n";
case 5: cout<<"in 5\n";
break;
}
}
break;
default:
{
cout<<"in deafult\n";
break;
}
}
return;
}
int main()
{
show(5);
return 0;
}
Я использовал этот пример кода, и я не мог понять его flow.According мне должно соответствовать условию по умолчанию, как errorCause ничего не соответствует, но его выход:Как выполняется этот блок переключателей?
in 5
I не понимаете, почему он не будет в состоянии по умолчанию?
Вот мои сборки детали окружающей среды:
компилятор: версия г ++ 4.8.4 (Ubuntu 4.8.4-2ubuntu1 ~ 14.04.3)
система: Ubuntu 14,04 (64-разрядная версия)
Отформатируйте код, пожалуйста ...Я, если бы представлял себе компилятор, отказался бы прочитать и разобрать этот код, из первых рук. –
Отладчик идеален, когда вы пытаетесь понять поток кода - вы можете просто шагнуть по программе шаг за шагом. –