
Smart Pointers
Box<T>, Rc<T>, Arc<T>, RefCell<T>, interior mutability, Deref, Drop traits
1Quel est le principal cas d'usage de Box<T> en Rust ?
Quel est le principal cas d'usage de Box<T> en Rust ?
Réponse
Box<T> permet d'allouer des donnees sur le heap plutot que sur la stack. C'est utile pour les types de taille inconnue a la compilation (types recursifs), pour transferer la propriete de grandes donnees sans copie, ou pour creer des trait objects. Le pointeur Box lui-meme a une taille fixe sur la stack.
2Comment definir un type recursif comme une liste chainee en Rust ?
Comment definir un type recursif comme une liste chainee en Rust ?
Réponse
Un type recursif direct comme enum List { Cons(i32, List), Nil } ne compile pas car le compilateur ne peut pas determiner la taille. En utilisant Box<List>, on cree une indirection avec une taille fixe (pointeur), permettant au compilateur de calculer la taille du type.
3Quelle est la difference principale entre Rc<T> et Arc<T> ?
Quelle est la difference principale entre Rc<T> et Arc<T> ?
Réponse
Rc (Reference Counted) utilise un compteur de references non-atomique, ce qui le rend plus performant mais limite a un seul thread. Arc (Atomically Reference Counted) utilise des operations atomiques pour le compteur, permettant le partage entre threads mais avec un leger overhead de performance.
Que permet le trait Deref en Rust ?
Qu'est-ce que la mutabilite interieure (interior mutability) en Rust ?
+19 questions d'entretien
Autres sujets d'entretien Rust
Les bases de Rust
Ownership & Borrowing
Structs & Enums
Gestion des erreurs
Collections
Modules & Packages
Traits
Generics
Lifetimes
Iterators & Closures
Concurrency Basics
async/await
Testing
Cargo & Ecosystem
Pattern Matching
Macros
Serde & Serialization
Unsafe Rust
Traits Avancés
Lifetimes Avancés
Type System
Tokio & Async I/O
Optimisation de Performance
Memory Management
Web Frameworks
Database Integration
Design Patterns Rust
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