diff --git a/slides/src/errors.md b/slides/src/errors.md index b5d3f70c64d9d40fec18bc6f6cdc38752193d0dc..eb96c9c11a54cad331de84d1d0839e5aa7812041 100644 --- a/slides/src/errors.md +++ b/slides/src/errors.md @@ -74,7 +74,7 @@ fn main() { assert!(denum != 0, "Le dénominateur doit être non nul."); let _total = num / denum; assert_eq!(num, denum, "num et denum devraient être égales."); - assert_ne!(a, b, "num et denum devraient être différentes."); + assert_ne!(num, denum, "num et denum devraient être différentes."); } ``` @@ -121,8 +121,8 @@ fn div(num: i32, denum: i32) -> Option<i32> { fn main() { let num = 1; let denum = 4; - if let res = Some(div(num, denum)) { - println!("{num} / {denum} = res"); + if let Some(res) = div(num, denum) { + println!("{num} / {denum} = {res}"); } else { println!("Une division par zéro est impossible."); } @@ -143,7 +143,7 @@ fn main() { let num = 1; let denum = 0; let res = div(num, denum).unwrap(); // panique! - println!("{num} / {denum} = res"); + println!("{num} / {denum} = {res}"); } ``` diff --git a/slides/src/generics.md b/slides/src/generics.md index e70ac48665a025287ffd57d4233329400236afce..a84135d1316f44b00c01bbe3bf59fd4d237c5488 100644 --- a/slides/src/generics.md +++ b/slides/src/generics.md @@ -62,7 +62,7 @@ struct Point<T> { fn main() { let int_point = Point{ x: 1, y: 2 }; // i32 point let flt_point = Point{ x: 2.3, y: 4.7 }; // f64 point - let does_not_work_point = Point{ x: 1, y: 1.5 } // oups + let does_not_work_point = Point{ x: 1, y: 1.5 }; // oups } ``` diff --git a/slides/src/ownership.md b/slides/src/ownership.md index 97993087f07e278267b9d7fa3af48ccaf8650869..19c914b7776a54b04c93bb0b5c537fc20d8c73b9 100644 --- a/slides/src/ownership.md +++ b/slides/src/ownership.md @@ -24,7 +24,7 @@ - Utilisée pour l'allocation dynamique (la taille des objets peut varier en cours d'exécution). - Peut modifier de la mémoire non-locale à une fonction. - Pas de structure particulière pour l'allocation/désallocation. -- Plus compliqué de gérer l'allocation/déasllocation. +- Plus compliqué de gérer l'allocation/désallocation. - Typiquement plus lent que la pile (il faut chercher de la place pour l'allocation et "sauter" en mémoire pour la retrouver). # La propriété (Ownership) @@ -39,7 +39,7 @@ fn main() { let x = 5; // x est propriétaire de la mémoire contenant 5 { - let y = 6; // y est propriétaire de la mémoire contenant 5 + let y = 6; // y est propriétaire de la mémoire contenant 6 println!("La valeur de (x,y) est: ({}, {}).", x, y); } // y sort de la portée et est détruite avec la valeur 6 println!("La valeur de x est: {}", x); diff --git a/slides/src/traits.md b/slides/src/traits.md index ebbd2436a911b7c2c53185d9f3a21b027a06d0ac..5c508c030fc5474039f1b3ad5c9bc4b8ba7f1d41 100644 --- a/slides/src/traits.md +++ b/slides/src/traits.md @@ -126,7 +126,7 @@ fn main() { - Lors de la définition d'un générique, on peut dire au compilateur si le type implémente un trait. ```rust [1-5|7-9|10-12|] -// T implémente PartialEq (les opérateurs <, >) +// T implémente PartialOrd (les opérateurs <, >) fn max<T: PartialOrd>(a: T, b: T) -> T { if a > b { a } else { b } // si on peut pas comparer a et b } // cela ne peut pas compiler, d'où