Когда вы используете общие коллекции в С# (или вообще .NET), делает ли компилятор в основном разработчики работы с ногами, которые нужно делать для создания общей коллекции для определенного типа. Так что в принципе., это просто спасает нас от работы?
Теперь, когда я думаю об этом, это не может быть прав. Поскольку без дженериков нам приходилось создавать коллекции, которые использовали не общий набор внутри, и поэтому были бокс и unboxing (если это была коллекция типов значений) и т.д.
Итак, как генерируются дженерики в CIL? Что он делает для внедрения, когда мы говорим, что хотим получить общую коллекцию? Мне не обязательно нужны примеры кода CIL (хотя это было бы хорошо), я хочу знать понятия того, как компилятор берет наши общие коллекции и отображает их.
Спасибо!
P.S. Я знаю, что я мог бы использовать ildasm, чтобы посмотреть на это, но я CIL по-прежнему выглядит как китайский для меня, и я не готов это решать. Я просто хочу, чтобы понятия С# (и других языков, которые, как я полагаю, тоже) отображали в CIL для обработки дженериков.