Rust

Generics

Generic functions, structs, enums, trait bounds, where clause, monomorphization

20 questions d'entretien·
Confirmé
1

Quelle est la syntaxe correcte pour déclarer une fonction générique en Rust ?

Réponse

En Rust, les paramètres de type générique se déclarent entre chevrons après le nom de la fonction. La syntaxe fn nom<T>(param: T) indique que T est un paramètre de type qui sera déterminé à l'utilisation. Le compilateur génère ensuite du code spécialisé pour chaque type concret utilisé lors de l'appel de la fonction.

2

Comment déclarer une struct générique avec un champ de type T ?

Réponse

Une struct générique se déclare avec le paramètre de type entre chevrons après le nom de la struct. La syntaxe struct Nom<T> { champ: T } permet de créer une structure réutilisable avec différents types. Le type T peut ensuite être utilisé dans les champs et les méthodes associées à cette struct.

3

Qu'est-ce que la monomorphisation en Rust ?

Réponse

La monomorphisation est le processus par lequel le compilateur Rust génère du code machine spécialisé pour chaque type concret utilisé avec un générique. Par exemple, si une fonction générique est appelée avec i32 et String, le compilateur crée deux versions distinctes de cette fonction. Cela garantit des performances optimales sans overhead à l'exécution.

4

Comment ajouter un trait bound sur un paramètre générique T ?

5

Quelle est la différence entre les syntaxes impl<T> Struct<T> et impl Struct<i32> ?

+17 questions d'entretien

Maîtrise Rust pour ton prochain entretien

Accède à toutes les questions, flashcards, tests techniques, exercices de code review et simulateurs d'entretien.

Commencer gratuitement