【发布时间】:2011-03-12 08:15:15
【问题描述】:
我有一个枚举MyEnum (Neg -1; None 0; Pos 1)。
我使用CompareTo() 的结果来初始化该枚举的对象。
.NET 中最高性能的方法是什么(负值到 -1、0 到 0、正值到 1)?
注意。CompareTo() 返回一个整数值..
【问题讨论】:
-
@knittl : 你认为 division 是性能最好的吗?
-
@knittl 是否将 .NET 映射到
0/0到0? -
如果枚举已经分配了 -1/0/1 值,CompareTo() 将始终返回 -1、0 或 1(从不返回任何其他值)。因此,如果我理解正确,您可以简单地执行以下操作来获取 MyEnum 类型值:
MyEnum myval = (MyEnum)x.CompareTo(y); -
@manixrock:我不确定“总是”。 MSDN讲述:“小于0”:msdn.microsoft.com/en-us/library/…
-
如果你想要“最高性能”的方法,你需要测试各种选项。看看 System.Diagnostics.Stopwatch 类来衡量每个。
标签: .net