Недавно рыскал по object browser'у, и увидел такую картину
Есть два одноименных метода ToArray, один из которых возвращает массив object'ов, а другой экземпляр класса Array. Как такое возможно? Перерыл пол гугла, MDSN говорит, что прегружать методы по возвращаемым значениям нельзя, на всех форумах пишут тоже самое, когда народ спрашивает "а можно ли так?". Но тут же в стандартной библиотеке я вижу такую картину. Подскажите пожалуйста, кто в теме, как это реализованно, потому что я читал, что стандартная библиотека типо не подчиняется правилам, использует функции от WinAPI и т.п.
Напомню, что перегрузка методов позволяет создавать методы с одним и тем же именем, но с разным списком аргументов. Причем возвращаемое значение не учитывается, а отличаться должны именно аргументы методов.
Если посмотреть на метод ToArray
, то видно, что один метод не имеет входных параметров, а другой - имеет. Сигнатура поменялась, а, значит, можно сделать вывод, что тут имеет место быть перегрузка.
Так что вполне всё корректно, даже если бы возвращаемое значение второго метода был тоже object[]
.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Хочу написать програмулину чтобы блокировала все сетевые порты:) этак вирус для начальникаПусть сидит на одном ftp и без танчиков