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