VB.NET no tiene los parámetros out
, pero puede especificar <Out()> ByRef
en los métodos COM y P/Invoke para obtener el mismo efecto para los métodos externos.¿La especificación de OutAttribute en los métodos internos ByRef actualmente hace algo?
¿Especificar lo mismo en métodos internos (es decir, métodos llamados únicamente por el código .NET) realmente ayuda a la Jitter (o compilador VB.NET)? ¿O es actualmente solo útil como nota de programador?
¿Es posible que se pueda utilizar en una fluctuación de fase futura, o se pierde este atributo al compilar?
Sí, es * exactamente * lo mismo. La palabra clave C# 'out' se compila en código IL que contiene el atributo' '. VB.NET simplemente no tiene la palabra clave. Puede verificar esto usted mismo compilando dos proyectos de prueba y usando ILdasm para compararlos. –
Supongo que esto se refiere al atributo Out en el espacio de nombres System.Runtime.InteropServices. Es ese el caso? – jswolf19
@ jswolf19 Sí, modificado, también en mis respuestas en preguntas vinculadas. –