Сегодня я с удивлением обнаружил, что в С# я могу сделать:
List<int> a = new List<int> { 1, 2, 3 };
Почему я могу это сделать? Какой конструктор называется? Как я могу сделать это с помощью своих собственных классов? Я знаю, что это способ инициализации массивов, но массивы - это языковые элементы, а списки - простые объекты...