¿Cuál es la razón/lógica/obstáculo detrás del hecho de que los métodos parciales solo pueden tener un tipo de retorno nulo?¿Por qué los métodos parciales solo pueden tener un tipo de retorno anulado?
gracias
¿Cuál es la razón/lógica/obstáculo detrás del hecho de que los métodos parciales solo pueden tener un tipo de retorno nulo?¿Por qué los métodos parciales solo pueden tener un tipo de retorno anulado?
gracias
Los métodos parciales están diseñados para ser dejados de lado si no proporcionó una implementación para ellos. El compilador realmente elimina llamadas a métodos parciales que no están implementados.
Esto también destaca por qué no pueden devolver nada: si confió en un valor de retorno sin implementar el método parcial, ¿entonces qué? Tendría algo sin inicializar, a pesar de que el código muestra claramente una tarea.
Finalmente entendido con su publicación. Tuve dificultad para encontrar la respuesta en otro lugar. ¡Gracias! – ckv
métodos parciales no implementadas se eliminan en tiempo de compilación. Un compilador puede ignorar una llamada a los métodos de anulación porque solo modifican el estado de un objeto ya existente. No puede eliminar los métodos que devuelven objetos porque eso invalidaría el código.
La implementación de métodos parciales está pensada como opcional.
Si no se proporciona la implementación, una llamada sigue siendo válida, pero el compilador la eliminará silenciosamente. A un delegado solo se le pueden asignar métodos parciales que se implementan.
Esto significa que no deberían tener efectos secundarios, de hecho no hay valores devueltos o parámetros de "salida", no pueden ser virtuales y son siempre privados.
Más here.
posible duplicado de [¿Por qué los métodos parciales no pueden devolver nada?] (Http://stackoverflow.com/questions/6954572/why-cant-partial-methods-return- anything) – BoltClock
¿Cómo espera un método parcial? con un tipo de devolución no nulo para trabajar? ¿Deberían devolver 'default (T)' o qué? – CodesInChaos