【发布时间】:2020-12-12 13:28:49
【问题描述】:
我在剖析一个统一插件时遇到了一个我不完全理解的switch 声明。我用谷歌搜索了它,但出现了空白。有人知道/可以解释case _: 的含义吗?
【问题讨论】:
-
能否展示完整的相关代码。我无法编译
case _:,除非_已用作常量名称:const string _ = "";
标签: c# unity3d syntax switch-statement
我在剖析一个统一插件时遇到了一个我不完全理解的switch 声明。我用谷歌搜索了它,但出现了空白。有人知道/可以解释case _: 的含义吗?
【问题讨论】:
case _:,除非 _ 已用作常量名称:const string _ = "";
标签: c# unity3d syntax switch-statement
_ 是一个discard - 它是一个占位符变量,用于表示您不关心且从不打算使用的值。 C# 可以优化这些值并避免为它们分配内存。
【讨论】:
_(优先于丢弃),否则这种case语句不会编译。它适用于类型模式,但是:case Person _: 但丢弃已过时,因为您可以简单地编写 case Person:。