Подтвердить что ты не робот

Что такое дженерики в С#?

Что такое дженерики в С#, проиллюстрированные простым примером? Каковы некоторые связанные статьи или сайты для этой темы?

4b9b3361

Ответ 1

Общие понятия относятся к методу написания кода для класса без указания типа (ов) данных, над которым работает класс.

Этот тип данных указывается при объявлении экземпляра универсального класса. Это позволяет универсальному классу быть специализированным для разных типов данных, но только для того, чтобы писать класс один раз.

Отличным примером являются многие классы коллекции в .NET. Каждый класс коллекции имеет собственную реализацию того, как создается и управляется коллекция. Но они используют generics, чтобы позволить их классу работать с коллекциями любого типа.

http://msdn.microsoft.com/en-us/library/ms379564(VS.80).aspx

Ответ 2

В С# нет ничего особенного в Generics. С# просто любит принимать известные концепции и называть их чем-то другим (например, вызывающие процедуры "статические методы" или вызов flatMap "SelectMany" ). В этом конкретном случае Generics - это просто имя С# для параметрического полиморфизма ранга-1.

Ответ 3

Из MSDN:

Generics - самая мощная функция С#. Дженерики позволяют определять структуры данных типа безопасных, не фиксируя фактические данные типы. Это приводит к значительному повышению производительности и повышению качественный код, поскольку вы можете повторно использовать алгоритмы обработки данных без дублирования кода типа. В концепции дженериков аналогичные шаблонам С++, но сильно отличаются в реализации и возможностей.

https://msdn.microsoft.com/en-us/library/ms379564.aspx