C++ 在C++;,如果断裂;开关大小写块的关键字不存在,两个大小写均为“;b"&;默认值被执行
C++:C++ 在C++;,如果断裂;开关大小写块的关键字不存在,两个大小写均为“;b"&;默认值被执行,c++,C++,C++: 你错过了一个案子之后的休息时间 B Default C不允许执行多于一个逻辑上不正确的情况,所以C语言编译器阻止。这两个是不同的语言。C的可能复制不允许转换case语句流入另一个case语句…它是一个非常常见的C++错误…所以C试图保护你。因此,您必须有一个中断在每个案例中.Hm。。如果input是a,为什么它会出现在开关的b中?答案很简单。C++和C语言不是同一种语言,它们实现了不同的规范。你为什么还要考虑比较他们的行为?请注意,你可以做goto default或goto cas
你错过了一个案子之后的休息时间
B
Default
C不允许执行多于一个逻辑上不正确的情况,所以C语言编译器阻止。
这两个是不同的语言。C的可能复制不允许转换case语句流入另一个case语句…它是一个非常常见的C++错误…所以C试图保护你。因此,您必须有一个中断代码>在每个案例中
.Hm。。如果input
是a
,为什么它会出现在开关的b
中?答案很简单。C++和C语言不是同一种语言,它们实现了不同的规范。你为什么还要考虑比较他们的行为?请注意,你可以做goto default
或goto case“c”
而不是break
ing。我不知道“逻辑不正确”,它在某些情况下非常有用(没有双关语)。跳转语句(goto)不会给您带来任何编译错误,但可能会增加代码的复杂性,因此不是一个好的编程习惯。@Biffen:@JitendraPancholi我不是说goto,我是说case fallrough。
B
Default
bool condition = true;
string input = "a";
switch (input)
{
case "b":
if (condition)
{
Console.WriteLine("B");
}
break; // You missed break;
default:
Console.WriteLine("Default");
break;
}