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

Явный аргумент типа в C#

Явный аргумент типа - это конкретный тип в угловых скобках сразу после имени метода. Если компилятор и так видит один T, скобки опускают. Их пишут, когда из вызова этот тип не получается.

Так бывает, если у вызова нет аргументов. Компилятор не видит, чем заменить T, и вызов без скобок не компилируется. В скобках пишут int - метод возвращает список чисел:

static List<T> MakeList<T>() => new List<T>(); List<int> nums = MakeList<int>(); nums.Add(7); Console.WriteLine(nums[0]);

Скобки пишут и когда аргументы разного типа. Из числа и строки один T не получается, вызов без скобок не компилируется. Если в скобках указать object, число и строка оба подходят под него, а метод возвращает первый аргумент:

static T First<T>(T a, T b) => a; object value = First<object>(4, "ab"); Console.WriteLine(value);

Дан код:

static List<T> Empty<T>() => new List<T>();

Вызовите метод с явным аргументом типа для строк, добавьте в список слово "beta" и выведите первый элемент.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить