相关疑难解决方法(0)

具有功能方法的枚举(组合类/枚举)

我可能会在这里错过某种观点,如果是这种情况 - 请将该讨论作为我问题的一部分:).

这是一个缩短并重命名的工作代码示例.这GetTicks(…)是一个单一的样本,可以是任何类型的功能(值> 0 < 9应返回特定的枚举a.so).

public static class Something
{
    public enum TypeOf : short
    {
        Minute = 2, Hour = 3, Day = 4, …
    }

    public static long GetTicks(Something.TypeOf someEnum)
    {
        long ticks = 0;
        switch (someEnum)
        {
            case Something.TypeOf.Minute:
                ticks = TimeSpan.TicksPerMinute;
                break;
            case Something.TypeOf.Hour:
                ticks = TimeSpan.TicksPerHour;
                break;
         ....
        }
        return ticks;
    }
}

// This class is called from anywhere in the system.
public static void SomeMethod(string dodo, object …
Run Code Online (Sandbox Code Playgroud)

c#

39
推荐指数
2
解决办法
3万
查看次数

如何在C#中为运算符重载运算符?

我有一个枚举类型,我想定义的>,<,>=,和<=运营商.我知道这些运算符是在枚举类型的基础上隐含创建的(根据文档)但我想明确定义这些运算符(为了清晰,控制,知道如何操作等等)

我希望我可以这样做:

public enum SizeType
{
    Small = 0,
    Medium = 1,
    Large = 2,
    ExtraLarge = 3
}

public SizeType operator >(SizeType x, SizeType y)
{

}
Run Code Online (Sandbox Code Playgroud)

但这似乎不起作用("意外的令牌")......这可能吗?它似乎应该是因为有隐含定义的运算符.有什么建议?

c# enums operator-overloading operators

33
推荐指数
4
解决办法
2万
查看次数

标签 统计

c# ×2

enums ×1

operator-overloading ×1

operators ×1