Rust Odyssey

Leçons
Login Rejoindre

x

Chapitre 2

Fondamentaux

7. Les modules

Notion de crate

Un crate en Rust est une unité de compilation, c’est le point d’entrée du compilateur.

  • Si notre projet contient un fichier main.rs, l’entrée sera le fichier main.rs
  • Si notre projet contient un fichier lib.rs, l’entrée sera le fichier lib.rs
  • Si notre projet contient les 2, les 2 crates seront compilés :
    • main.rs produit un executable
    • lib.rs produit une librairie

Notion de module

  • On crée un module avec le mot clé mod.
  • Chaque élément du module doit être précédé de pub pour être accessible depuis l’extérieur du module.
  • Pour utiliser un élément d’un module depuis l’extérieur, on utilise la syntaxe my_module::my_element, l’opérateur :: permet de naviguer à travers les namespaces.’

On a dans l’exemple suivant un module math qui contient une fonction publique (accessible depuis l’extérieur du module) add.

mod math {
    pub fn add(a: i32, b: i32) -> i32 {
        a + b
    }
}

fn add(a:i32, b:i32, c:i32)-> i32 {
    a + b + c
}

fn main() {
    println!("{}", math::add(2, 3));
    println!("{}", add(2, 3, 4));
}

Tu veux en apprendre plus ? 👋

C'est la fin de la partie gratuite... 😔

Accède à l’intégralité de la formation, à un Discord francophone actif, à des résumés écrits et à toutes les futures mises à jour pour seulement 95€ !

Login Rejoindre