Jak używać gdzie

Jak używać gdzie
Ograniczenia typu ogólnego w C# Pozwól programistom zdefiniować zestaw typów, które może reprezentować parametr typu ogólnego. Ta funkcja umożliwia kompilatorowi egzekwowanie bezpieczeństwa typu i zapobiega błędom, które mogą wystąpić w czasie wykonywania. Jednym z najczęściej używanych ograniczeń jest "Gdzie" ograniczenie, ten artykuł wyjaśni, co "Gdzie" Ograniczenie jest w C# i jak używać go w swoim kodzie.

Jakie jest ograniczenie „gdzie”

"Gdzie" Ograniczenie jest ogólnym ograniczeniem typu w C#, który pozwala programistom określić parametr typu, który może reprezentować typ ogólny. Ograniczenie jest określone za pomocą "Gdzie" Słowo kluczowe, a następnie parametr typu i ograniczenie, składnia do używania "Gdzie" Ograniczenie jest następujące:

Nazwa klasy publicznej gdzie t: ograniczenie

// Wdrożenie klasy

Tutaj "Nazwa klasy" reprezentuje nazwę klasy z parametrem typu ogólnego "T". "Gdzie" słowo kluczowe określa ograniczenie dla parametru typu i "ograniczenie" to typ, który musi reprezentować parametr typu.

Weźmy przykład klasy ogólnej, która akceptuje parametr typu i zwraca minimalną wartość z tablicy wartości. Tutaj kod używa "Gdzie" ograniczenie, aby określić, że parametr typu musi być typem liczbowym:

za pomocą systemu;
MinValue klasy publicznej gdzie t: struct, icompartowalne, ikonowialne

public t getMinValue (t [] tablica)

if (array == null || tablica.Długość == 0)
Rzuć nowe argumentException („tablica nie może być zerowa ani pusta”);

T min = tablica [0];
dla (int i = 1; i < array.Length; i++)
if (tablica [i].Compareto (min) < 0)
min = tablica [i];


powrót min;


Program klasy publicznej

public static void main ()

int [] intarray = 1, 2, 3, 4, 5;
MinValue intminValue = nowa minvalue();
int intmin = intminValue.GetMinValue (InTARRAY);
Konsola.WriteLine („Minimalna wartość InTARRAY: 0”, intmin);
Double [] Doublearray = 1.1, 2.2, 3.3, 4.4, 5.5;
MinValue DoubleminValue = nowa minvalue();
podwójna dublemin = dubleminValue.GetMinValue (Doublearray);
Konsola.WriteLine („Minimalna wartość Doublearray: 0”, Doublemin);

Tutaj zdefiniowaliśmy klasę ogólną „MinValue” który akceptuje parametr typu "T" i zwraca minimalną wartość z szeregu wartości. Następnie użyliśmy "Gdzie" Ograniczenie, aby określić, że parametr typu musi być struct, zaimplementować interfejs ICOMPRET i zaimplementować interfejs ikonverter. To ograniczenie zapewnia, że ​​tylko typy liczbowe są dozwolone jako parametry typu.

Wniosek

"Gdzie" Ograniczenie w C# jest potężną funkcją, która pozwala programistom egzekwować bezpieczeństwo typu i zapobiegać błędom w czasie wykonywania. Korzystając z tego ograniczenia, możesz określić zestaw typów, które może reprezentować parametr typu ogólnego. Ten artykuł zawierał przegląd "Gdzie" ograniczenie w C# i zademonstrował, jak go używać z kodem.