我的函数返回一些长值
其中包含低32位和高32位的两个值。
我认为处理返回值(value)的最佳方法
是从长期派生我的自定义类型并提供
输入诸如GetLowerValue(),GetHigherValue()之类的扩展程序。
问题是.NET不允许从很长的时间内派生
如果你编译
public class SubmitOrderResult : long
{
}
你得到:
cannot derive from sealed type 'long'
为什么这样设计,以及如何克服它?
谢谢
最佳答案
如前所述,.NET中的值类型是密封的,因此您无法从long中派生出任何方法。您应该按照建议创建扩展方法。
例子
public static class LongExtensions
{
public static long GetLowerValue(this long value)
{
...
}
public static long GetHigherValue(this long value)
{
...
}
}
关于c# - 为什么我不能从长久而来?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1782927/