Неужели невозможно использовать перегрузку возвращаемого типа?

Я сделал небольшую DLL в MSIL двумя способами:

float AddNumbers(int, int)
int AddNumbers(int, int)

Как некоторые из вас могут знать, MSIL позволяет создавать методы с одинаковыми аргументами, если у вас есть разные типы возвращаемых типов (так называемая перегрузка возвращаемых типов). Теперь, когда я попытался использовать его из c #, как я и ожидал, он выдал ошибку:

float f = ILasm1.MainClass.AddNumbers(1, 2);

Ошибка:

Вызов неоднозначен между следующими методами или свойствами: 'ILasm1.MainClass.AddNumbers (int, int)' и 'ILasm1.MainClass.AddNumbers (int, int)'

Действительно ли c # не способен различать различные типы возвращаемых данных? Я знаю, что не могу запрограммировать методы, которые имеют только различие в различных типах возвращаемых данных, но я всегда предполагал, что он знает, как с этим справиться

Ответы на вопрос(7)

Ваш ответ на вопрос