Tableau comme paramètre
Fait partie de la section Fundamentals du Journey Rust de Coddy — leçon 56 sur 75.
En Rust, vous pouvez accepter des tableaux comme paramètres de la manière suivante :
Tableaux de taille fixe :
fn process_array(arr: [i32; 5]) {}Cela vous permet de ne passer que des tableaux d'une longueur de 5 en raison du 5 dans [i32; 5].
Référence de tableau utilisant le signe & :
fn process_array(arr: &[i32]) {}Une référence est comme un pointeur vers des données au lieu des données elles-mêmes. L'utilisation de & crée une référence. Cela permet de passer un tableau de n'importe quelle taille.
Utilisez des tableaux de taille fixe ([i32; 5]) lorsque vous avez besoin de travailler uniquement avec des tableaux d'une taille spécifique.
Utilisez des références de tableau (&[i32]) lorsque vous voulez plus de flexibilité - elles peuvent accepter des tableaux de n'importe quelle taille, et c'est plus efficace en termes de mémoire.
Par exemple, voici comment appeler une fonction qui accepte un tableau par référence :
let numbers = [1, 2, 3, 4, 5];
process_array(&numbers);Aide-mémoire
Les tableaux peuvent être passés comme paramètres de fonction de deux manières :
Tableaux de taille fixe :
fn process_array(arr: [i32; 5]) {}Accepte uniquement les tableaux contenant exactement 5 éléments.
Références de tableaux :
fn process_array(arr: &[i32]) {}Accepte des tableaux de n'importe quelle taille. Plus flexible et efficace en termes de mémoire.
Appel avec une référence de tableau :
let numbers = [1, 2, 3, 4, 5];
process_array(&numbers);Essayez vous-même
Cette leçon ne comprend pas de défi de code.
Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Fundamentals
4Opérateurs - Partie 1
Opérateurs arithmétiquesOpérateur moduloRaccourcis arithmétiquesOpérateurs de comparaisonComparaison de chaînes7Entrées/Sorties de base
Afficher dans la consoleLire la saisie utilisateurRécapitulatif - Jusqu'à 120Récapitulatif - Vrai ou Faux5Opérateurs, partie 2
Opérateurs logiques, partie 1Opérateurs logiques, partie 2Récapitulatif - Logique simpleOpérateurs logiques, partie 33Variables - Partie 2
Déclaration de typeConventions de nommageInférence de typeRécapitulatif - Initialiser des variablesConversion de type9Boucles
Boucle For sur une sérieBoucle WhileBreakContinueBoucles imbriquéesÉtiquettes de boucleBoucle infinieRécapitulatif - Entrée dynamique12Bases des tableaux
Déclaration de tableauxTableau comme paramètreAccès aux élémentsModification de tableauxRécapitulatif - Affichage formaté d'un tableau15Opérations sur les chaînes
Méthodes de chaînesMacro format!Conversion de chaînesRécapitulatif - Format