首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

有关C#泛型的一个有关问题

2012-04-23 
有关C#泛型的一个问题C# codeprotected void SortInDescendingOrderT(ref T[] array){for (int i 1 i

有关C#泛型的一个问题

C# code
        protected void SortInDescendingOrder<T>(ref T[] array)        {            for (int i = 1; i < array.Length; ++i)            {                T temp = array[i];                int j = i;                while ((j > 0) && (array[j - 1] < temp))                {                    array[j] = array[j - 1];                    --j;                }                array[j] = temp;            }        }

错误1运算符“<”无法应用于“T”和“T”类型的操作数

这个要如何解决?求赐教!

[解决办法]
写法错误先看看怎么定义泛型吧
[解决办法]
错误原因是无法对一个通用的类进行四则运算,需要
override operator -


[解决办法]
探讨
引用:
没法解决,不知道T是个什么东西,怎么能知道T可以不可以进行 < 运算。

只能是提供一个委托,返回一个比较结果。

如果我想将T实例化为 int 或 float,该如何修改这段代码?

热点排行