Rust

Macros

Declarative macros (macro_rules!), derive macros, attribute macros, procedural macros, macro hygiene

20 questions d'entretien·
Confirmé
1

Quelle est la syntaxe utilisée pour définir une macro déclarative en Rust ?

Réponse

La syntaxe macro_rules! permet de définir des macros déclaratives en Rust. Cette forme de métaprogrammation utilise le pattern matching sur la syntaxe Rust pour transformer du code à la compilation. Les macros déclaratives sont aussi appelées "macros by example" car elles fonctionnent en matchant des patterns et en produisant du code basé sur ces patterns.

2

Comment invoquer une macro en Rust ?

Réponse

Les macros en Rust sont invoquées avec un point d'exclamation après leur nom, suivi des arguments entre parenthèses, crochets ou accolades. Cette convention permet de distinguer visuellement les appels de macros des appels de fonctions normaux. Par exemple, println!("Hello") ou vec![1, 2, 3] sont des invocations de macros.

3

Quel fragment specifier utiliser pour capturer une expression dans une macro déclarative ?

Réponse

Le fragment specifier $e:expr capture une expression Rust dans une macro déclarative. Les fragment specifiers définissent le type de syntaxe que la macro peut accepter. D'autres specifiers courants incluent ident pour les identifiants, ty pour les types, tt pour un token tree, et block pour un bloc de code.

4

Quelle est la différence principale entre les macros déclaratives et procédurales ?

5

Qu'est-ce que l'hygiène des macros en Rust ?

+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