gpt4 book ai didi

c# - 将枚举视为通用吗?

转载 作者:行者123 更新时间:2023-12-02 23:20:18 25 4
gpt4 key购买 nike

我正在尝试找到一种通用地处理枚举的方法,但我找不到让它发挥作用的方法。假设我有几个声明如下的枚举:

public enum ABC {
One,
Two,
Three
}

public enum DEF {
Four,
Five,
Six
}

我想编写一个方法,它采用枚举作为参数,并简单地返回枚举的名称,如下所示:

public string GetEnumName(Enum anEnum) {
return anEnum.GetType().Name;
}

但如果我像 GetEnumName(DEF) 这样调用它;我收到“是一种用作变量的类型”错误。有任何想法吗?谢谢

编辑抱歉,从回复来看,我可能还不够清楚。我只是选择 GetEnumName 作为一个非常简单的示例来说明问题,而不是如何从类型中获取名称。基本上我想要一个可以传递任何枚举并让它直接作用于该枚举的方法,谢谢

最佳答案

用途:

public static string GetTypeName<T>()
{
return typeof(T).Name;
}

用法:

var result = GetTypeName<DEF>();

关于c# - 将枚举视为通用吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9298497/

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