1
4
达夫的设备很难像前面提到的那样成为跨领域案例标签的“目的”,它只是对它的一种利用。 事实可能是它不起作用 特意设计的 目的,但仅仅是一个最简单的可行实现的人工制品。这种设计使得switch-case构造可以精确地执行合理的操作,但也不能明确地保护您免受不合理的操作。 |
2
4
case标签只是标签,用于(编译器生成的)goto的目的地。
与普通标签具有相同的功能范围,案例标签具有
唯一合理的优势是 Duff's Device 然而,这在现代计算机上并不十分重要。 所以,这是历史性的。 一个“冻结历史”的案例。 干杯! |
3
1
该代码仅出于历史原因编译。 请注意,它可能会导致 未定义的行为 :
如果
|
4
1
switch语句中的跨范围大小写标签 做 为某个目的服务,特别是在实时、嵌入式系统应用程序中。首先,它们允许 couroutines . 它们还减少或消除了在类似的低级应用程序中使用goto语句。是的,goto很难看,但是如果你以前写过设备驱动程序,而时间和同步问题是规范的,那么你会很欣赏跨范围的case标签对于goto语句的高度维护的有用性。两害相权取其轻。 |
5
-1
上面的代码是以下内容的同义词:
编译器不区分此代码和您根据开关盒功能发布的代码。它将其解释为说明的多个案例场景。 |
apax · 提取运算符“$`()在函数中返回零长度向量 6 年前 |
Abishek · R中的作用域是如何工作的? 7 年前 |
user994585 · 在WP插件页面上的非对象上调用成员函数 7 年前 |
Vipul Rajan · Java范围错误 8 年前 |