gpt4 book ai didi

c# - 在 switch 语句案例中使用属性?

转载 作者:行者123 更新时间:2023-11-30 19:08:13 27 4
gpt4 key购买 nike

我在一个生成 Command 对象的类中有一个 switch 语句,它基于代码文件中的某一行是否与该 Command 对象的特定代码匹配。

像这样:

switch (line):
{
case "#CODE1":
return new Command1();
case "#CODE2":
return new Command2();
}

我想把它变成这样的:

switch (line):
{
case Command1.Code:
return new Command1();
case Command2.Code:
return new Command2();
}

我通过创建 Command1 的公共(public)静态属性来尝试它,但编译器提示...

有没有一种方法可以按照这个意图做一些编译器不会提示的事情?

最佳答案

我认为你只能用常量来做到这一点……所以如果可能的话,使用常量字段而不是公共(public)静态属性。不同之处在于它在编译时被视为文字,因此如果值发生变化,您将需要重新编译所有引用该常量的程序集。

关于c# - 在 switch 语句案例中使用属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1229169/

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