Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
1106 of 1492 menu
◀ ▶

Параметр типа

Имя параметра пишут в угловых скобках после имени типа, например Box<T>. Внутри класса T выступает как обычный тип: им можно объявлять поля, свойства и методы. При создании экземпляра вместо T подставляют конкретный тип, например Box<int> или Box<string>.

Синтаксис

class Имя<T> { public T поле; }

Пример

Давайте сохраним строку в Box<string>:

using System; class Box<T> { public T Value; } class Program { static void Main() { var box = new Box<string> { Value = "abcde" }; Console.WriteLine(box.Value); } }

Результат выполнения кода:

"abcde"

Пример

Давайте используем тот же класс с типом int:

using System; class Box<T> { public T Value; } class Program { static void Main() { var box = new Box<int> { Value = 5 }; Console.WriteLine(box.Value); } }

Результат выполнения кода:

5

Пример

Давайте вернём значение поля через метод:

using System; class Holder<T> { public T Item; public T Read() { return Item; } } class Program { static void Main() { var holder = new Holder<string> { Item = "12345" }; Console.WriteLine(holder.Read()); } }

Результат выполнения кода:

"12345"

Смотрите также

  • обобщённый метод,
    который задаёт T у самого метода
  • default для T,
    который даёт значение по умолчанию параметра
  • List,
    который хранит элементы заданного типа
  • typeof,
    который получает объект Type по типу
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить