Une copie d'un tableau n'est pas produite lorsqu'il est passé par référence. Au lieu de cela, la fonction ou la méthode reçoit une référence au tableau initial. En conséquence, toute modification apportée au tableau dans la fonction ou la méthode aura un impact sur le tableau initial.
Il peut prendre un certain temps pour passer un tableau par valeur car il fait un double du tableau d'origine en mémoire, surtout lorsque vous travaillez avec des tableaux énormes. Néanmoins, Passer un tableau via référence est plus efficace car il passe simplement l'emplacement de la mémoire du tableau d'origine.
L'argument de fonction doit être spécifié en tant que variable de référence à l'aide du '&'Symbole pour passer un tableau par référence en c++. Cela élimine l'exigence pour que la fonction renvoie une valeur car toutes les modifications apportées au tableau dans la fonction seront également appliquées au tableau initial.
#inclure
void modify_array (int (& arr) [3])
arr [0] = 5;
arr [1] = 6;
arr [2] = 7;
int main()
int arr [3] = 1, 2, 3;
Modify_Array (arr);
std :: cout << "Modified array: ";
pour (int i = 0; i < 3; i++)
std :: cout << arr[i] << " ";
std :: cout << std::endl;
retour 0;
Dans le code ci-dessus, l'argument pour le Modify_Array () La fonction est une référence à un tableau de nombres. Le Modify_Array () La méthode modifie les éléments du tableau en leur donnant de nouvelles valeurs. Dans ce cas, 5, 6 et 7 sont définis comme les trois premiers éléments du tableau, en conséquence.
Un tableau de trois entiers est défini et initialisé avec les nombres 1, 2 et 3 dans la fonction principale. Ce tableau est ensuite envoyé comme une entrée au Modify_Array () méthode. Le Modify_Array () La méthode modifie les membres de l'original tableau puisque le tableau est passé par référence.
Sortir
Avantages de passer un tableau par référence
1: Efficacité
L'efficacité est un avantage de passer des tableaux par référence. Un double du tableau complet est créé lorsqu'un tableau est passé par valeur. Cela pourrait consommer beaucoup de mémoire et ralentir le logiciel. Lorsque les tableaux sont passés par référence, le programme utilise moins de mémoire et fonctionne plus rapidement.
2: adaptabilité
La flexibilité est un autre avantage de passer des tableaux par référence. Lorsqu'un tableau est passé par référence, La fonction ou la méthode peut ajouter, supprimer ou modifier les éléments du tableau. Étant donné que la fonction ou la méthode peut être utilisée pour mener diverses activités en fonction des exigences du programme, cela donne à la programmation de flexibilité supplémentaire.
Il y a quelques facteurs importants à considérer lors de la fourniture d'un tableau par référence en C++. Tout d'abord, le '&'Le symbole n'est pas requis lorsque passer un nom de tableau comme référence L'argument car un nom de tableau est effectivement un pointeur vers le premier élément du tableau. Deuxièmement, la taille du tableau doit être donnée lors de la déclaration d'un paramètre de référence pour un tableau. Enfin, il est risqué et conseillé d'éviter de changer la taille d'un tableau à l'intérieur d'une fonction.
Conclusion
Une caractéristique importante de C ++ qui permet une programmation plus efficace et adaptable est la capacité de passer des tableaux par référence. La mémoire est conservée et l'application s'exécute plus rapidement en utilisant la référence au tableau d'origine. De plus, l'option pour modifier le tableau initial offre une liberté de programmation supplémentaire. Pour garantir une exécution appropriée, il est crucial d'utiliser la syntaxe correcte et d'énoncer clairement la taille du tableau dans la signature de la fonction ou de la méthode.