Что означает <> при определении интерфейса? - PullRequest
4 голосов
/ 18 октября 2010

Я узнал о написании своих собственных интерфейсов и наткнулся на статью MSDN " Интерфейсы (Руководство по программированию в C #) ". Все выглядит хорошо, за исключением: что означает или делает

interface IEquatable<T>
{
    bool Equals(T obj);
}

Ответы [ 2 ]

21 голосов
/ 18 октября 2010

Это означает, что это универсальный интерфейс.

Вы можете создать такой интерфейс:

public interface IMyInterface<T>
{
    T TheThing {get; set;}
}

, и вы можетереализовать его различными способами:

public class MyStringClass : IMyInterface<string>
{
    public string TheThing {get; set;}
}

и так:

public class MyIntClass : IMyInterface<int>
{
    public int TheThing {get; set;}
}
0 голосов
/ 18 октября 2010

Это параметрический тип означает, что вы можете повторно использовать IEquatable для любого типа ... во время выполнения (но не совсем), вместо T, вы можете использовать String, Animal, Dog ecc ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...