如果我的一個switch語句有一個沒有中斷的情況,我想得到一個警告/錯誤。這可能嗎?如果交換機的情況下,我怎麼能使MSVC警告或失敗?
switch (i){
case 1:
cout << "one";
//forgot to break here, I want to be warned about this
case 2:
cout << "two";
break;
}
類似Clang的特點是在去原生2012會議上討論,但我需要它MSVC2013 http://channel9.msdn.com/Events/GoingNative/GoingNative-2012/Clang-Defending-C-from-Murphy-s-Million-Monkeys
理想我想爲在兩次連續的身體不被中斷分開的警告,這樣的例子上面會失敗,但這不會:
switch (i){
case 1:
cout << "one";
break;
case 2:
case 3:
cout << "not one";
break;
}
@我不是說我有這個項目的選擇,但出於好奇,這會更好的語言是什麼? – odinthenerd
C#,對於一個絕對強制中斷(或者像'throw'或'return'這樣的邏輯對等體) – sehe
看起來像C++ 17接受了[[fallthrough]]屬性,所以希望MSVC很快就會實現它。 – Predelnik