En su libro, Jon Skeet se refiere a 7 restricciones sobre tipeo implícito. Necesito aclaración sobre los dos últimos:Restricciones sobre el tipado implícito
A. El tipo que desea que la variable tenga es el tipo de tiempo de compilación de la expresión de inicialización.
B. La expresión de inicialización no implica la variable que se declara.
El libro cubre el material en el mismo orden en que fue lanzado (C# 2 antes de C# 3). En este punto C# 4 no se ha introducido, por lo que asumo que A no se refiere a dynamic
. Entonces, ¿cuándo sería el tipo de tiempo de compilación diferente del tipo de tiempo de ejecución de la expresión de inicialización?
Como para B, ¿cuándo puede una expresión de inicialización implicar la variable que se declara?
¿No es 'var x = 2 * x' un buen ejemplo para ** B **? –
@WiktorZychla - eso no compilaría con tipeo explícito tampoco. –
Un ejemplo para A: 'var x = (object) string.Empty;' – phoog