sre*_*sre 17 c# switch-statement
我目前正在为此代码添加一些新的扩展类:
foreach (BaseType b in CollectionOfExtendedTypes) {
if (b is ExtendedType1) {
((ExtendedType1) b).foo = this;
}
else if (b is ExtendedType2) {
((ExtenedType2) b).foo = this;
}
else {
b.foo = this;
}
}
Run Code Online (Sandbox Code Playgroud)
并且好奇是否有办法is在switch语句中使用关键字功能?
Mik*_*keT 11
最新版本的C#(7)现在包含此功能
类型模式可以实现简洁的类型评估和转换.当与switch语句一起使用以执行模式匹配时,它会测试表达式是否可以转换为指定的类型,如果可以,则将其转换为该类型的变量.它的语法是:
case type varname
Run Code Online (Sandbox Code Playgroud)