Diferencia entre out y ref en C

Tabla de contenido:

Diferencia entre out y ref en C
Diferencia entre out y ref en C

Video: Diferencia entre out y ref en C

Video: Diferencia entre out y ref en C
Video: c# ref vs out | Clases y Objetos | Programando en C# 2024, Mes de julio
Anonim

Diferencia clave: fuera vs referencia en C

C es un lenguaje de programación moderno desarrollado por Microsoft. Se utiliza para desarrollar diversas aplicaciones para escritorio, web y móvil. Funciones o métodos es un concepto en programación. Ese grupo de declaraciones que se utilizan para realizar una tarea específica se conoce como función o método. En los programas 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 está llamando al nuevo método se conoce como llamar al método. El nuevo método se conoce como el método llamado. Para administrar los valores pasados 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 al 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 clave entre out y ref en C es que out es una palabra clave que se usa para hacer referencia a un parámetro de salida que se usa para pasar los resultados del método llamado al método que llama, mientras que ref es una palabra clave para hacer referencia a un parámetro de referencia que se usa para pasar datos del método de llamada al método llamado y recibir los datos del método llamado al método de llamada.

¿Qué hay en C?

La sintaxis para una 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)

{ //sentencias 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 devolución explica si la función devuelve un valor o no. Cuando no hay tipo de retorno, se llama void. El especificador de acceso se utiliza para especificar la accesibilidad del método 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.

Diferencia entre out y ref en C
Diferencia entre out y ref en C

Los parámetros de salida se utilizan para devolver los resultados al método de llamada. Para eso, el parámetro debe declararse 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 de una función usando parámetros de salida. Consulte el siguiente programa.

aplicación de espacio de nombres1{

Cálculo de clase pública{

visualización de vacío público (out int a, out int b){

int valor=5;

a=valor;

b=valor;

a=a a;

b=bb;

}

public static void main(String argumentos){

int valor1=10, valor2=20;

Cálculo cal=nuevo Cálculo();

cal.display(salida valor1, salida valor2);

Consola. 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, se devuelven esos valores. Al imprimir value1 y value2, no dará 10 y 20. En su lugar, imprimirá 25 y 25. Usando la palabra clave out, se pueden devolver múltiples valores del método.

¿Qué es ref en C?

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 de variables se denominan parámetros formales. Consulte el siguiente código.

aplicación de espacio de nombres1{

Cálculo de clase pública{

intercambio de vacío público (int x, int y){

temperatura interna;

temperatura=x;

x=y;

y=temperatura;

}

public static void main(String argumentos){

Cálculo cal=nuevo Cálculo();

int p=2;

int q=3;

intercambio de calorías(p, q);

Consola. WriteLine(p);

Consola. WriteLine(q);

Consola. ReadLine();

}

}

}

Según el programa anterior, la clase Calculation tiene un método de intercambio (). En el programa principal, se crea un objeto de tipo Cálculo. Hay dos valores como p y q. La variable p tiene el valor 2 y la variable q tiene el 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 temporal, los valores se intercambian. De vuelta en el programa principal, al imprimir p y q, los valores no se intercambian. El valor p sigue siendo 2 y el valor 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 pasar valores como arriba, es posible pasar parámetros por referencia. Una variable de referencia es una referencia a la ubicación de la memoria. No se crea ninguna nueva ubicación de memoria. Los cambios en el método se reflejan en el programa principal. En C, los parámetros de referencia se refieren mediante la palabra clave ref. Consulte el siguiente programa.

aplicación de espacio de nombres1{

Cálculo de clase pública{

intercambio de vacío público (ref int x, ref int y){

temperatura interna;

temperatura=x;

x=y;

y=temperatura;

}

public static void main(String argumentos){

Cálculo cal=nuevo Cálculo();

int p=2;

int q=3;

cambio de cal(ref p, ref q);

Consola. WriteLine(p);

Consola. WriteLine(q);

Consola. ReadLine();

}

}

}

Según 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. Hay 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 p y q se pasan al método. Esas variables de referencia se refieren usando ref. En el método de intercambio, en lugar de trasladar 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.

¿Cuál es la similitud entre out y ref en C?

Ambas son palabras clave que se utilizan para referirse a los parámetros de un método

¿Cuál es la diferencia entre out y ref en C?

fuera vs referencia en C

La salida es una palabra clave en C que se usa para referirse a un parámetro de salida. Se utiliza para pasar los resultados de un método llamado a llamar al método. La ref es una palabra clave en C que se usa para hacer referencia a un parámetro de referencia. Se utiliza para pasar datos del método de llamada al método de llamada y para devolver datos del método de llamada al método de llamada.
Funcionalidad
Al usar la palabra clave out, los datos se pueden pasar del método de llamada al método llamado. Pero esos datos se descartan. Se utiliza para pasar el resultado al método de llamada desde el 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.
Transmisión 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 que llama. Cuando se utiliza la palabra clave ref, los datos se transmiten de dos maneras: del método de llamada al método de llamada y del método de llamada al método de llamada.

Resumen: fuera vs referencia en C

Al invocar un método, puede ser necesario pasar los valores al método y recuperar los resultados del método. C tiene diferentes parámetros para lograr eso. Los parámetros de valor se utilizan para pasar parámetros al 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 que se usa para hacer referencia a un parámetro de salida que se usa para pasar los resultados del método llamado al método que llama, mientras que ref es una palabra clave para hacer referencia a un parámetro de referencia que se usa para pasar datos de método de llamada al método llamado y para recibir los datos del método llamado al método de llamada.

Descargue el PDF de out vs ref en C

Puede descargar la versión en PDF de este artículo y usarla sin conexión según la nota de la cita. Descargue la versión en PDF aquí: Diferencia entre Out y Ref en C

Recomendado: