Différence clé - out vs ref en C
C est un langage de programmation moderne développé par Microsoft. Il est utilisé pour développer diverses applications pour ordinateur de bureau, Web et mobile. Les fonctions ou méthodes sont un concept en programmation. Ce groupe d'instructions utilisées pour effectuer une tâche spécifique est appelé fonction ou méthode. Dans les programmes C, l'exécution commence à partir de main(). C'est un exemple de méthode. Lors de l'appel d'une méthode, les données sont transmises à la méthode ou reçues de la méthode. La méthode qui appelle la nouvelle méthode est connue sous le nom d'appel de la méthode. La nouvelle méthode est appelée méthode appelée. Pour gérer les valeurs de passage et récupérer le résultat, Cutilise des paramètres. Ce sont des paramètres valorisés, des paramètres de sortie et des paramètres de référence. Les paramètres de valeur sont utilisés pour passer des paramètres dans la méthode par valeur. Les paramètres de référence sont utilisés pour passer des paramètres à la méthode par référence. Les paramètres de sortie sont utilisés pour renvoyer le résultat de la méthode. En C, le mot-clé out est utilisé pour les paramètres de sortie et le mot-clé ref est utilisé pour référencer les paramètres. le différence clé entre out et ref en Cest que out est un mot-clé utilisé pour référencer un paramètre de sortie utilisé pour transmettre les résultats de la méthode appelée à la méthode d'appel tandis que ref est un mot-clé pour référencer un paramètre de référence utilisé pour passer données de la méthode appelante à la méthode appelée et pour recevoir les données de la méthode appelée à la méthode appelante.
Qu'y a-t-il en C ?
La syntaxe d'une fonction ou d'une méthode est la suivante. Une méthode comporte un certain nombre d'éléments tels que le nom de la méthode, la liste des paramètres, le type de retour et le spécificateur d'accès.
(liste des paramètres)
{ //instructions à exécuter
}
Chaque méthode a une méthode unique pour effectuer l'appel de fonction. Les instructions exécutables sont entre accolades. Le type de retour explique si la fonction retourne une valeur ou non. Lorsqu'il n'y a pas de type de retour, il est appelé void. Le spécificateur d'accès est utilisé pour spécifier l'accessibilité de la méthode dans l'application. Les paramètres sont utilisés pour recevoir ou transmettre des données à la méthode. Il peut également y avoir des méthodes sans paramètres. Les paramètres peuvent être des paramètres de valeur, des paramètres de sortie ou des paramètres de référence.
Les paramètres de sortie sont utilisés pour renvoyer les résultats à la méthode appelante. Pour cela, le paramètre doit être déclaré avec le mot clé out. Le paramètre de sortie ne crée pas de nouvel emplacement de stockage. Généralement, une méthode renvoie une valeur. Mais en C, il est possible de renvoyer deux valeurs à partir d'une fonction en utilisant des paramètres de sortie. Reportez-vous au programme ci-dessous.
application d'espace de noms1{
Calcul de la classe publique{
public void display(out int a, out int b){
int value=5;
a=valeur;
b=valeur;
a=une une;
b=bb;
}
public static void main(String args){
int valeur1=10, valeur2=20;
Calcul cal=nouveau Calcul();
cal.display(out value1, out value2);
Console. ReadLine();
}
}
}
La fonction display est appelée depuis la méthode main. La valeur1 et la valeur deux ont 10 et 20, mais elles ne sont pas prises en compte dans la méthode. La valeur de a est 25 et la valeur de b est également 25 dans la fonction. Par conséquent, ces valeurs sont renvoyées. Lors de l'impression de value1 et value2, il ne donnera pas 10 et 20. Au lieu de cela, il imprimera 25 et 25. En utilisant le mot-clé out, plusieurs valeurs peuvent être renvoyées à partir de la méthode.
Qu'est-ce qu'une référence en C ?
Lors du passage des paramètres par valeur, un nouvel emplacement de stockage est créé pour chaque paramètre. Les paramètres réels qui ont été envoyés depuis le programme principal ne changent pas. Au lieu de cela, ces valeurs sont copiées dans un emplacement distinct. Ces nouvelles copies variables sont appelées paramètres formels. Reportez-vous au code ci-dessous.
application d'espace de noms1{
Calcul de la classe publique{
public void swap(int x, int y){
int temp;
temp=x;
x=y;
y=temp;
}
public static void main(String args){
Calcul cal=nouveau Calcul();
int p=2;
int q=3;
cal.swap(p, q);
Console. WriteLine(p);
Console. WriteLine(q);
Console. ReadLine();
}
}
}
Selon le programme ci-dessus, la classe Calcul a une méthode swap(). Dans le programme principal, un objet de type Calcul est créé. Il existe deux valeurs telles que p et q. La variable p a la valeur 2 et la variable q a la valeur 3. Ces deux valeurs sont transmises à la méthode swap. Dans la méthode swap, la valeur 2 est copiée dans la variable x et la valeur 3 est copiée dans la variable y. En utilisant la variable temp, les valeurs sont permutées. De retour dans le programme principal, lors de l'impression de p et q, les valeurs ne sont pas permutées. La valeur p est toujours 2 et la valeur q est 3. Même dans la méthode d'échange, les valeurs sont échangées mais ne se reflètent pas dans le programme principal.
Contrairement au passage de valeurs comme ci-dessus, il est possible de passer des paramètres par référence. Une variable de référence est une référence à l'emplacement mémoire. Aucun nouvel emplacement mémoire n'est créé. Les modifications apportées à la méthode sont reflétées dans le programme principal. En C, les paramètres de référence sont référencés à l'aide du mot-clé ref. Reportez-vous au programme ci-dessous.
application d'espace de noms1{
Calcul de la classe publique{
public void swap(ref int x, ref int y){
int temp;
temp=x;
x=y;
y=temp;
}
public static void main(String args){
Calcul cal=nouveau Calcul();
int p=2;
int q=3;
cal.swap(ref p, ref q);
Console. WriteLine(p);
Console. WriteLine(q);
Console. ReadLine();
}
}
}
Selon le programme ci-dessus, la classe Calcul a la méthode d'échange. Dans le programme principal, un objet de type Calcul est créé. Il y a deux variables telles que p et q. La variable p a la valeur 2 et la variable q a la valeur 3. Plutôt que de transmettre des valeurs, la référence aux emplacements mémoire de p et q est transmise à la méthode. Ces variables de référence sont référencées à l'aide de ref. Dans la méthode d'échange, plutôt que de copier les valeurs vers un nouvel emplacement, les modifications sont apportées aux paramètres réels. Lors de l'impression des valeurs p et q du programme principal, il donnera les valeurs échangées. Maintenant, la valeur p est 3 et la valeur q est 2.
Quelle est la similarité entre out et ref en C ?
Les deux sont des mots clés utilisés pour référencer les paramètres d'une méthode
Quelle est la différence entre out et ref en C ?
out vs ref en C |
|
The out est un mot-clé en C utilisé pour référencer un paramètre de sortie. Il est utilisé pour transmettre les résultats d'une méthode appelée à l'appel de la méthode. | The ref est un mot-clé en C utilisé pour référencer un paramètre de référence. Il est utilisé pour transmettre des données de la méthode appelante à la méthode appelée et pour renvoyer les données de la méthode appelée à la méthode appelante. |
Fonctionnalité | |
Lorsque vous utilisez le mot-clé out, les données peuvent être transmises de la méthode appelante à la méthode appelée. Mais ces données sont rejetées. Il est utilisé pour transmettre le résultat à la méthode appelante depuis la méthode appelée. | Lorsque vous utilisez le mot clé ref, les données sont transmises de la méthode appelante à la méthode appelée et les données manipulées sont renvoyées à la méthode appelante. |
Passage de données | |
Lorsque vous utilisez le mot-clé out, les données sont transmises d'une manière qui est une méthode appelée à la méthode appelante. | Lorsque vous utilisez le mot-clé ref, les données sont transmises de deux manières, de la méthode appelante à la méthode appelée et de la méthode appelée à la méthode appelante. |
Résumé – out vs ref en C
Lors de l'appel d'une méthode, il peut être nécessaire de passer les valeurs dans la méthode et de récupérer les résultats de la méthode. Ca différents paramètres pour y parvenir. Les paramètres de valeur sont utilisés pour passer des paramètres dans la méthode par valeur. Les paramètres de référence sont utilisés pour passer des paramètres à la méthode par référence. Les paramètres de sortie sont utilisés pour renvoyer le résultat de la méthode. En C, le mot-clé out est utilisé pour les paramètres de sortie et le mot-clé ref est utilisé pour référencer les paramètres. La différence entre out et ref en Cest que, out est un mot-clé utilisé pour faire référence à un paramètre de sortie utilisé pour transmettre les résultats d'une méthode appelée à une méthode appelante, tandis que ref est un mot-clé pour faire référence à un paramètre de référence utilisé pour transmettre des données de méthode d'appel à la méthode appelée et pour recevoir les données de la méthode appelée à la méthode d'appel.
Télécharger le PDF de out vs ref en C
Vous pouvez télécharger la version PDF de cet article et l'utiliser à des fins hors ligne conformément à la note de citation. Veuillez télécharger la version PDF ici: Différence entre Out et Ref en C