Présentation des identifiants bruts en Rust

RustRustBeginner
Pratiquer maintenant

This tutorial is from open-source community. Access the source code

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Dans ce laboratoire, nous allons apprendre à utiliser les identifiants bruts en Rust, qui nous permettent d'utiliser des mots clés comme identifiants dans des situations où ils ne sont généralement pas autorisés, tels que les noms de variables ou de fonctions, en particulier lorsque des éditions plus anciennes de Rust entrent en conflit avec de nouveaux mots clés.

Note : Si le laboratoire ne spécifie pas de nom de fichier, vous pouvez utiliser n'importe quel nom de fichier que vous voulez. Par exemple, vous pouvez utiliser main.rs, le compiler et l'exécuter avec rustc main.rs &&./main.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL rust(("Rust")) -.-> rust/FunctionsandClosuresGroup(["Functions and Closures"]) rust(("Rust")) -.-> rust/DataStructuresandEnumsGroup(["Data Structures and Enums"]) rust(("Rust")) -.-> rust/ErrorHandlingandDebuggingGroup(["Error Handling and Debugging"]) rust(("Rust")) -.-> rust/ProjectManagementandOrganizationGroup(["Project Management and Organization"]) rust/FunctionsandClosuresGroup -.-> rust/function_syntax("Function Syntax") rust/FunctionsandClosuresGroup -.-> rust/expressions_statements("Expressions and Statements") rust/DataStructuresandEnumsGroup -.-> rust/method_syntax("Method Syntax") rust/ErrorHandlingandDebuggingGroup -.-> rust/error_propagation("Error Propagation") rust/ProjectManagementandOrganizationGroup -.-> rust/cargo_crates("Cargo and Crates") subgraph Lab Skills rust/function_syntax -.-> lab-99288{{"Présentation des identifiants bruts en Rust"}} rust/expressions_statements -.-> lab-99288{{"Présentation des identifiants bruts en Rust"}} rust/method_syntax -.-> lab-99288{{"Présentation des identifiants bruts en Rust"}} rust/error_propagation -.-> lab-99288{{"Présentation des identifiants bruts en Rust"}} rust/cargo_crates -.-> lab-99288{{"Présentation des identifiants bruts en Rust"}} end

Identifiants bruts

Rust, comme de nombreux langages de programmation, a le concept de "mots clés". Ces identifiants ont une signification pour le langage, et donc vous ne pouvez pas les utiliser dans des endroits comme les noms de variables, les noms de fonctions et d'autres endroits. Les identifiants bruts vous permettent d'utiliser des mots clés là où ils ne seraient normalement autorisés. Cela est particulièrement utile lorsque Rust introduit de nouveaux mots clés, et qu'une bibliothèque utilisant une édition plus ancienne de Rust a une variable ou une fonction avec le même nom qu'un mot clé introduit dans une édition plus récente.

Par exemple, considérez une boîte à outils foo compilée avec l'édition 2015 de Rust qui exporte une fonction nommée try. Ce mot clé est réservé pour une nouvelle fonctionnalité dans l'édition 2018, donc sans identifiants bruts, nous n'aurions pas de moyen de nommer la fonction.

extern crate foo;

fn main() {
    foo::try();
}

Vous obtiendrez cette erreur :

error: expected identifier, found keyword `try`
 --> src/main.rs:4:4
  |
4 | foo::try();
  |      ^^^ expected identifier, found keyword

Vous pouvez écrire cela avec un identifiant brut :

extern crate foo;

fn main() {
    foo::r#try();
}

Sommaire

Félicitations ! Vous avez terminé le laboratoire sur les identifiants bruts. Vous pouvez pratiquer d'autres laboratoires sur LabEx pour améliorer vos compétences.