gpt4 book ai didi

c# - switch case 语法指定数据类型

转载 作者:太空狗 更新时间:2023-10-30 00:06:52 25 4
gpt4 key购买 nike

今天在工作中,我像以前一样进行代码审查,但今天我看到了一种我以前从未见过的语法。我已经在网上搜索它无济于事,更有趣的是,尽管使用相同版本的 Visual Studio,即 2017 Enterprise,但当我尝试重新创建我所看到的内容时,我在家里遇到了语法错误今天上类。它看起来像这样:

switch (someObject) {
case TypeOne valueOne: action1(); break;
case TypeTwo valueTwo: action2(); break;
// ... and so on
}

换句话说,看起来他们一次检查了类型和值。但正如我所说,我无法在互联网上找到它,而且我在家里遇到语法错误。我知道 C# 7 中有很多新东西,尤其是在语法糖方面。你能解释一下吗?

最佳答案

这是一个 new C# 7 feature : 匹配类型的模式匹配 switch 语句。

这段代码做了什么,给出第一个分支:

  • 它检查 someObject 是否是、派生自或实现类型 TypeOne
  • 如果是这样,它会将 someObject 转换为类型 TypeOne,并将其分配给 valueOne
  • 然后进入case block ,可以直接使用valueOne

关于c# - switch case 语法指定数据类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43682387/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com