Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/330.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何为阵列实现CompareTo?_C#_.net - Fatal编程技术网

C# 如何为阵列实现CompareTo?

C# 如何为阵列实现CompareTo?,c#,.net,C#,.net,我有以下课程 public class MinPQ<T> : IComparable<T> { private T[] keys; ... } 大多数情况下,T将是int或double我假设您的意思是如何将类型T声明为可比较的。如果是这样,您可以使用以下通用约束来完成 public class MinPQ<T> where T: IComparable<T> { private T[] keys; ... } 公

我有以下课程

public class MinPQ<T> : IComparable<T>
{
    private T[] keys;
    ...
}

大多数情况下,
T
将是
int
double
我假设您的意思是如何将类型
T
声明为可比较的。如果是这样,您可以使用以下通用约束来完成

public class MinPQ<T> where T: IComparable<T>
{
    private T[] keys;
    ...
}
公共类MinPQ,其中T:i可比较
{
私人T[]密钥;
...
}

我假定您指的是如何将类型
T
声明为可比较的。如果是这样,您可以使用以下通用约束来完成

public class MinPQ<T> where T: IComparable<T>
{
    private T[] keys;
    ...
}
公共类MinPQ,其中T:i可比较
{
私人T[]密钥;
...
}

在比较阵列中的对象时,为什么要在
MinPQ
中实现CompareTo?MinPQ不应对imo负责。如果
T
应实施
i可比较
,然后,也许最好添加约束:
public class MinPQ,其中T:IComparable
。如果要将单独的元素按索引与另一个数组的元素进行比较,则不应该实现
IComparable
-
int
double
已经实现了此接口。也许您只想接受可比较的类型?为什么在比较数组中的对象时要在
MinPQ
中实现CompareTo?MinPQ不应对imo负责。如果
T
应实施
i可比较
,然后,也许最好添加约束:
public class MinPQ,其中T:IComparable
。如果要将单独的元素按索引与另一个数组的元素进行比较,则不应该实现
IComparable
-
int
double
已经实现了此接口。也许你只想接受可比较的类型?