Как работают параметры `IReadOnlyCollection`, если у `IReadOnlyCollection` нет метода Add?C#

Место общения программистов C#
Anonymous
Как работают параметры `IReadOnlyCollection`, если у `IReadOnlyCollection` нет метода Add?

Сообщение Anonymous »

Согласно документации Microsoft по функциям C# 13, коллекции параметров можно использовать с типами, реализующими IEnumerable и имеющими метод Add. Однако я заметил, что могу использовать IReadOnlyCollection в аргументе params, хотя IReadOnlyCollection не имеет метода Add.

Код: Выделить всё

void PrintNumbers(params IReadOnlyCollection numbers)
{
foreach (var num in numbers)
{
Console.WriteLine(num);
}
}

PrintNumbers(1, 2, 3, 4, 5);
Этот код работает, и я могу передавать отдельные целые числа в параметр params типа IReadOnlyCollection
Если у IReadOnlyCollection нет метода Add, как это разрешено в коллекции параметров?

Подробнее здесь: https://stackoverflow.com/questions/790 ... tiont-does

Вернуться в «C#»