Czy można w metodzie sortowania jako parametr podać strukturalny typ tablicowy? albo po prostu:jak to zrobić, żeby ten typ był akceptowaly
Chodzi mi o tablice Bibliografia[] tablica = new Bibliografia[10]; Jako parametr w sortowaniu podałem Bibliografia i compilator wyświetla mi taki błąd." 'Bibliografia' cannot be used as type parameter 'T' in the generic type or method Sort<T>'. There is no boxing conversion from 'Bibliografia' to 'System.IComparable'.
public struct Bibliografia
{
public string imie;
public string nazwisko;
public string informatyk;
public int isbn;
}
public class SelectionSort<T> where T : IComparable
{
public T[] Sort(T[] tablica, int n)
{
int k;
T temp;
for (int i = 0; i < n - 1; i++)
{
k = i;
for (int j = i + 1; j < n; j++)
{
if (tablica[j].CompareTo(tablica[k]) < 0)
{
k = j;
}
}
temp = tablica[i];
tablica[i] = tablica[k];
tablica[k] = temp;
}
return tablica;
}
}
SelectionSort<__**Bibliografia**__> moje_sortowanie = new SelectionSort<__**Bibliografia**__>();