C # es un lenguaje de programación moderno desarrollado por Microsoft. Se utiliza para el desarrollo de diversas aplicaciones para escritorio, web y móvil. Funciones o métodos es un concepto en la programación. Ese grupo de declaraciones que se utilizan para realizar una tarea específica se conoce como una función o un método. En los programas de C #, la ejecución comienza desde main (). Es un ejemplo de un método. Al llamar a un método, los datos se pasan al método o se reciben del método. El método que llama al nuevo método se conoce como llamando al método. El nuevo método es conocido como el método llamado. Para administrar los valores que pasan y recuperar el resultado, C # usa parámetros. Son parámetros valorados, parámetros de salida y parámetros de referencia. Los parámetros de valor se utilizan para pasar parámetros en el método por valor. Los parámetros de referencia se utilizan para pasar parámetros al método por referencia. Los parámetros de salida se utilizan para devolver el resultado del método. En C #, la palabra clave out se usa para los parámetros de salida y la palabra clave ref se usa para hacer referencia a los parámetros. los diferencia clave entre fuera y ref en C # es que, out es una palabra clave utilizada para referir un parámetro de salida que se usa para pasar los resultados del método llamado al método de llamada, mientras que ref es una palabra clave para referirse a un parámetro de referencia que se usa para pasar datos del método de llamada al método llamado y para recibir los datos Del método llamado al método de llamada..
1. Resumen y diferencia clave
2. Lo que está en C #
3. ¿Qué es ref en C #
4. Similitudes entre fuera y ref en C #
5. Comparación lado a lado - fuera vs ref en C # en forma tabular
6. Resumen
La sintaxis para la función o un método es la siguiente. Un método tiene una serie de elementos como el nombre del método, la lista de parámetros, el tipo de retorno y el especificador de acceso.
(lista de parámetros)
// declaraciones a ejecutar
Cada método tiene un método único para realizar la llamada a la función. Las declaraciones ejecutables están dentro de llaves. El tipo de retorno explica si la función devuelve un valor o no. Cuando no hay un tipo de retorno, se llama void. El especificador de acceso se utiliza para especificar el método de accesibilidad en la aplicación. Los parámetros se utilizan para recibir o pasar datos al método. También puede haber métodos sin parámetros. Los parámetros pueden ser parámetros valorados, parámetros de salida o parámetros de referencia..
Los parámetros de salida se utilizan para devolver los resultados al método de llamada. Para eso, el parámetro debe ser declarado con la palabra clave out. El parámetro de salida no crea una nueva ubicación de almacenamiento. Generalmente, un método devuelve un valor. Pero en C #, es posible devolver dos valores desde una función usando parámetros de salida. Consulte el siguiente programa.
espacio de nombres application1
cálculo público de clase
pantalla pública vacía (out int a, out int b)
valor int = 5;
a = valor;
b = valor;
a = a * a;
b = b * b;
public static void main (String [] args)
int value1 = 10, value2 = 20;
Cálculo cal = nuevo Cálculo ();
cal.display (out value1, out value2);
Console.ReadLine ();
La función de visualización se llama desde el método principal. El valor 1 y el valor dos tienen 10 y 20, pero no se incluyen en el método. El valor de a es 25 y el valor de b también es 25 en la función. Por lo tanto, esos valores son devueltos. Al imprimir value1 y value2, no dará 10 y 20. En cambio, imprimirá 25 y 25. Usando la palabra clave out, se pueden devolver múltiples valores desde el método..
Al pasar parámetros por valor, se crea una nueva ubicación de almacenamiento para cada parámetro. Los parámetros reales que se enviaron desde el programa principal no cambian. En su lugar, esos valores se copian en una ubicación separada. Esas nuevas copias variables se llaman parámetros formales. Consulte el siguiente código.
espacio de nombres application1
cálculo público de clase
intercambio público de vacíos (int x, int y)
int temp;
temp = x;
x = y;
y = temp;
public static void main (String [] args)
Cálculo cal = nuevo Cálculo ();
int p = 2;
int q = 3;
cal.swap (p, q);
Console.WriteLine (p);
Console.WriteLine (q);
Console.ReadLine ();
De acuerdo con el programa anterior, la clase de cálculo tiene un método swap (). En el programa principal, se crea un objeto de tipo Cálculo. Hay dos valores como p y q. La variable p tiene valor 2 y la variable q tiene valor 3. Esos dos valores se pasan al método de intercambio. En el método de intercambio, el valor 2 se copia en la variable x y el valor 3 se copia en la variable y. Usando la variable temp, se intercambian los valores. De vuelta en el programa principal, al imprimir p y q, los valores no se intercambian. El valor de p sigue siendo 2 y el valor de q es 3. Incluso en el método de intercambio, los valores se intercambian pero no se reflejan en el programa principal.
A diferencia de los valores de paso anteriores, es posible pasar parámetros por referencia. Una variable de referencia es una referencia a la ubicación de la memoria. No hay una nueva ubicación de memoria se crea. Los cambios en el método reflejados en el en el programa principal. En C #, los parámetros de referencia se refieren usando la palabra clave ref. Consulte el siguiente programa.
espacio de nombres application1
cálculo público de clase
intercambio público de vacíos (ref int x, ref int y)
int temp;
temp = x;
x = y;
y = temp;
public static void main (String [] args)
Cálculo cal = nuevo Cálculo ();
int p = 2;
int q = 3;
cal.swap (ref p, ref q);
Console.WriteLine (p);
Console.WriteLine (q);
Console.ReadLine ();
De acuerdo con el programa anterior, la clase Cálculo tiene el método de intercambio. En el programa principal, se crea un objeto de tipo Cálculo. Son dos variables como p y q. La variable p tiene el valor 2 y la variable q tiene el valor 3. En lugar de pasar valores, la referencia a las ubicaciones de memoria de pyq se pasa al método. Esas variables de referencia son referidas usando ref. En el método de intercambio, en lugar de copiar los valores a una nueva ubicación, los cambios se realizan en los parámetros reales. Al imprimir los valores p y q del programa principal, dará los valores intercambiados. Ahora el valor p es 3 y el valor q es 2.
fuera vs ref en C # | |
Out es una palabra clave en C # que se usa para referir un parámetro de salida. Se utiliza para pasar los resultados de un método llamado a llamar al método. | La referencia es una palabra clave en C # que se usa para referirse a un parámetro de referencia. Se utiliza para pasar datos del método de llamada al método llamado y para devolver los datos del método llamado al método de llamada.. |
Funcionalidad | |
Cuando se usa la palabra clave out, los datos se pueden pasar del método de llamada al método llamado. Pero esos datos son descartados. Se utiliza para pasar el resultado al método de llamada del método llamado. | Cuando se utiliza la palabra clave ref, los datos pasan del método de llamada al método llamado y los datos manipulados se devuelven al método de llamada.. |
Paso de datos | |
Cuando se usa la palabra clave out, los datos se pasan de una manera que es un método llamado al método de llamada. | Cuando se utiliza la referencia de la palabra clave, los datos se pasan de dos formas, desde el método de llamada al método llamado y desde el método llamado al método de llamada.. |
Al invocar un método, podría ser necesario pasar los valores al método y recuperar los resultados del método. C # tiene diferentes parámetros para lograrlo. Los parámetros de valor se utilizan para pasar parámetros en el método por valor. Los parámetros de referencia se utilizan para pasar parámetros al método por referencia. Los parámetros de salida se utilizan para devolver el resultado del método. En C #, la palabra clave out se usa para los parámetros de salida y la palabra clave ref se usa para hacer referencia a los parámetros. La diferencia entre out y ref en C # es que out es una palabra clave utilizada para referir un parámetro de salida que se usa para pasar los resultados del método llamado al método de llamada, mientras que ref es una palabra clave para referirse a un parámetro de referencia que se usa para pasar datos desde método de llamada al método llamado y para recibir los datos del método llamado al método de llamada.
Puede descargar la versión en PDF de este artículo y utilizarla para fines fuera de línea según la nota de cita. Descargue la versión PDF aquí: Diferencia entre salida y referencia en C #
1.tutorialspoint.com. "C # Métodos". El punto. Disponible aquí
2.dnfvideo. Parámetros de C # Out Vs Parámetros REF, videos de preparación de entrevistas .NET, 28 de septiembre de 2015. Disponible aquí
1.'C sharp'By Mothmolevna - Trabajo propio, (Dominio público) a través de Commons Wikimedia