Jared es por supuesto correcto. Para agregar un par de detalles más:
- Casi nadie usa la sintaxis "omita la lista de parámetros".
- No tenemos ningún escenario para lambdas que requiera esa característica.
- La característica complica la inferencia de tipo y la resolución de sobrecarga, y hace que sea más probable que fallen ambas.
- ¿Qué sintaxis le gustaría para la función?
Action<int> c = => {};
??? No tengo ningún deseo de hacer =>
en un operador de prefijo unario.
Así, por un lado tenemos la lista de pros:
- Lambdas consistencia de ganancia con una innecesaria característica de C# 2.0 que casi nadie conoce o utiliza - una característica que, francamente, nos gustaría que nos 'd nunca había hecho en el primer lugar
y los contras:
- aplicación complica tipo ya complejo en Los algoritmos de resolución de sobrecarga y sobrecarga
- característica conducen a más posibilidades de errores para los usuarios sin la ganancia correspondiente en potencia de representación.
- hay obviamente agradable sintaxis
Si le dieron esa lista de pros y contras, ¿qué harías? Espero que "implementar la función" no sea tu elección; no fue nuestro
Desafortunadamente, no existe una buena razón para ello, como dice @JaredPar a continuación. Solo algo que se omitió (ya sea intencionalmente o no, no estoy seguro). –
Esto parece un trabajo para ... Eric Lippert hombre! – Tudor
@Tudor Inserta el tema de Batman aquí. –