Veo que los parametros de salida funcionan igual a los parametro por referencia, debe haber alguna diferencia ¿cuál es?

Nexura Internacional

Nexura Internacional

Pregunta
student
hace 6 años

Veo que los parametros de salida funcionan igual a los parametro por referencia, debe haber alguna diferencia ¿cuál es?

3 respuestas
    Juan David Amaya Cardenas

    Juan David Amaya Cardenas

    student
    hace 6 años

    Hola @jsotonx

    La diferencia esta en que un parametro por referencia, es en escencia eso, una referencia de un objeto que yo puedo utitilizar dentro de mi metodo, ya sea para llamar a alguna de sus propiedades o metodos, el out por otra parte es estrictamente una variable de salida, con estricto me refiero a que por obligacion debes asignarle un valor dentro de tu metodo.

    Rafael Aguero Baez

    Rafael Aguero Baez

    student
    hace 6 años

    La diferencia está en que un parámetro por referencia es utilizado para que el parámetro que le pasas al método sea asignado por referencia y no por valor. Esto quiere decir que cundo es asignado de esta forma utilizan la misma instancia en memoria, por esta razón cuando modifiques el valor del parámetro se modificara el valor inicial que tenga la variable que le pases y esto solo aplica para datos primitivos, mientras que en el caso de los objetos siempre son pasados por referencia. Por otra parte, los parámetros de salida son básicamente como su nombre lo indica parámetros que al momento de ejecutarse el método devolverán un valor aparte de lo que ya retorna el método.

    Brian Sánchez Izquierdo

    Brian Sánchez Izquierdo

    student
    hace 5 años

    La diferencia radica en que los parámetros por referencia son un puntero a la localidad de memoria de la variable durante la ejecución del programa, y cuando manipulas dicha variable referenciada estás operando sobre su localidad de memoria; con los parámetros de salida creas nuevas localidades de memoria dentro del método o función donde los retornaras.

Curso de C# con .Net Core

Curso de C# con .Net Core

Profundiza en C# y .Net Core 2.1, manejando excepciones, colecciones y polimorfismo. Desarrolla tu capacidad para construir reportes inteligentes utilizando link y diccionarios. Ideal para programadores con fundamentos en C#.

Curso de C# con .Net Core
Curso de C# con .Net Core

Curso de C# con .Net Core

Profundiza en C# y .Net Core 2.1, manejando excepciones, colecciones y polimorfismo. Desarrolla tu capacidad para construir reportes inteligentes utilizando link y diccionarios. Ideal para programadores con fundamentos en C#.