Maison > développement back-end > C++ > le corps du texte

La différence entre transmettre des valeurs et transmettre des références dans les paramètres de fonction C++

王林
Libérer: 2024-04-19 12:33:02
original
1097 Les gens l'ont consulté

Le passage des paramètres de fonction C++ a deux méthodes : le passage de valeur et le passage de référence : Passage de valeur : créez une copie de la variable locale et les modifications apportées à la copie n'affectent pas la variable d'origine. Passer par référence : transmettez directement la référence à la variable d'origine et les modifications apportées à la variable de référence sont reflétées dans la variable d'origine.

C++ 函数参数传递值和传递引用的区别

C++ La différence entre passer des paramètres de fonction par valeur et passer par référence

Passage par valeur

Lorsqu'un paramètre de fonction est passé par valeur, une copie de la variable locale sera créée. Les modifications apportées à cette copie n'affectent pas la variable d'origine.

Syntaxe :

void function(int value);
Copier après la connexion

Pass par référence

Lorsqu'un paramètre de fonction est passé par référence, la référence à la variable d'origine est passée directement au lieu de créer une copie. Les modifications apportées à la variable de référence seront reflétées dans la variable d'origine.

Syntaxe :

void function(int& value);
Copier après la connexion

Exemple pratique

Considérons la fonction suivante :

void swap(int& a, int& b) {
  int temp = a;
  a = b;
  b = temp;
}
Copier après la connexion

Cette fonction passe deux entiers par référence, donc lorsque la fonction échange la valeur de ab, elle modifie également la variable d'origine dans le fichier principal fonction .

Exemple d'utilisation :

int main() {
  int x = 5, y = 10;
  swap(x, y); // 交换 x 和 y 的值
  cout << x << ", " << y << endl; // 输出交换后的值
  return 0;
}
Copier après la connexion

Sortie :

10, 5
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal