gpt4 book ai didi

.net - 枚举扩展方法

转载 作者:行者123 更新时间:2023-12-03 05:53:13 24 4
gpt4 key购买 nike

在vs2008中,是否可以编写适用于任何枚举的扩展方法。

我知道您可以针对特定枚举编写扩展方法,但我希望能够使用单个扩展方法对每个枚举进行处理。这可能吗?

最佳答案

是的,只需针对基本 Enum 类型进行编码,例如

public static void Something(this Enum e)
{
// code here
}

缺点是您可能最终会做一些非常讨厌的事情,例如使用 Enum.GetUnderlyingType 查找真正的基类型,转换,并根据枚举的基本类型向下进入不同的分支,但是您可以找到它的一些很好的用途(例如,我们有 IsOneOfIsCombinationOf 方法适用于所有枚举)。

PS:请记住,在编写方法时,尽管不建议,您可以使用 floatdouble 作为枚举的基本类型,因此您需要一些特殊情况对于这些值以及无符号值。

关于.net - 枚举扩展方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/276585/

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