he cometido un pequeño archivo DLL en MSIL con dos métodos:¿Sobrecarga de tipo de retorno realmente imposible de usar?
float AddNumbers(int, int)
int AddNumbers(int, int)
Como algunos de ustedes sabrán, MSIL le permite realizar métodos que tienen los mismos argumentos, siempre y cuando usted tiene diferentes tipos de tipos de retorno (lo se llama sobrecarga de tipo de retorno). Ahora, cuando traté de usarlo desde C#, ya que estaba esperando un poco, se disparó un error:
float f = ILasm1.MainClass.AddNumbers(1, 2);
El error es:
The call is ambiguous between the following methods or properties: 'ILasm1.MainClass.AddNumbers(int, int)' and 'ILasm1.MainClass.AddNumbers(int, int)'
es C# realmente incapaces de distinguir entre diferentes tipos de retorno ? Sé que no puedo programar métodos que tengan como única diferencia diferentes tipos de devolución, pero siempre supuse que sabría cómo manejarlo.
Parece que IL lo admite http://blogs.msdn.com/abhinaba/archive/2005/10/07/478221.aspx –
Que lo admite, ya lo sé ... hice un ensamblado con él, como puede ver en lo que escribí arriba ... –