# Smart Pointers (Rust) > Box, Rc, Arc, RefCell, interior mutability, traits Deref y Drop - 22 preguntas de entrevista - Mid-Level - [Preguntas de entrevista: Rust](https://sharpskill.dev/es/technologies/rust/preguntas-entrevista.md) ## 1. ¿Cuál es el caso de uso principal de Box en Rust? **Respuesta** Box asigna datos en el heap en lugar de la stack. Esto resulta útil para tipos cuyo tamaño se desconoce en tiempo de compilación (tipos recursivos), para transferir la ownership de grandes volúmenes de datos sin copiarlos, o para crear trait objects. El propio puntero Box tiene un tamaño fijo en la stack. ## 2. ¿Cómo definir un tipo recursivo como una lista enlazada en Rust? **Respuesta** Un tipo recursivo directo como enum List { Cons(i32, List), Nil } no compila porque el compilador no puede determinar el tamaño. Al usar Box, se crea una indirección con un tamaño fijo (puntero), lo que permite al compilador calcular el tamaño del tipo. ## 3. ¿Cuál es la diferencia principal entre Rc y Arc? **Respuesta** Rc (Reference Counted) usa un contador de referencias no atómico, lo que lo hace más eficiente pero limitado a un solo thread. Arc (Atomically Reference Counted) usa operaciones atómicas para el contador, lo que permite compartir entre threads pero con una ligera sobrecarga de rendimiento. ## 19 preguntas más disponibles - ¿Qué permite el trait Deref en Rust? - ¿Qué es la mutabilidad interior (interior mutability) en Rust? Regístrate gratis: https://sharpskill.dev/es/login ## Otros temas de entrevista Rust - [Fundamentos de Rust](https://sharpskill.dev/es/technologies/rust/preguntas-entrevista/rust-basics.md): 25 preguntas, Junior - [Ownership & Borrowing](https://sharpskill.dev/es/technologies/rust/preguntas-entrevista/ownership-borrowing.md): 22 preguntas, Junior - [Structs & Enums](https://sharpskill.dev/es/technologies/rust/preguntas-entrevista/structs-enums.md): 20 preguntas, Junior - [Manejo de errores](https://sharpskill.dev/es/technologies/rust/preguntas-entrevista/error-handling.md): 18 preguntas, Junior - [Colecciones](https://sharpskill.dev/es/technologies/rust/preguntas-entrevista/collections.md): 20 preguntas, Junior - [Módulos y Paquetes](https://sharpskill.dev/es/technologies/rust/preguntas-entrevista/modules-packages.md): 18 preguntas, Junior - [Traits](https://sharpskill.dev/es/technologies/rust/preguntas-entrevista/traits.md): 22 preguntas, Mid-Level - [Generics](https://sharpskill.dev/es/technologies/rust/preguntas-entrevista/generics.md): 20 preguntas, Mid-Level - [Lifetimes](https://sharpskill.dev/es/technologies/rust/preguntas-entrevista/lifetimes.md): 20 preguntas, Mid-Level - [Iterators & Closures](https://sharpskill.dev/es/technologies/rust/preguntas-entrevista/iterators-closures.md): 22 preguntas, Mid-Level - [Concurrency Basics](https://sharpskill.dev/es/technologies/rust/preguntas-entrevista/concurrency-basics.md): 20 preguntas, Mid-Level - [async/await](https://sharpskill.dev/es/technologies/rust/preguntas-entrevista/async-await.md): 22 preguntas, Mid-Level - [Testing](https://sharpskill.dev/es/technologies/rust/preguntas-entrevista/testing.md): 18 preguntas, Mid-Level - [Cargo & Ecosystem](https://sharpskill.dev/es/technologies/rust/preguntas-entrevista/cargo-ecosystem.md): 18 preguntas, Mid-Level - [Pattern Matching](https://sharpskill.dev/es/technologies/rust/preguntas-entrevista/pattern-matching.md): 18 preguntas, Mid-Level - [Macros](https://sharpskill.dev/es/technologies/rust/preguntas-entrevista/macros.md): 20 preguntas, Mid-Level - [Serde y serialización](https://sharpskill.dev/es/technologies/rust/preguntas-entrevista/serde-serialization.md): 20 preguntas, Mid-Level - [Unsafe Rust](https://sharpskill.dev/es/technologies/rust/preguntas-entrevista/unsafe-rust.md): 20 preguntas, Senior - [Traits avanzados](https://sharpskill.dev/es/technologies/rust/preguntas-entrevista/advanced-traits.md): 22 preguntas, Senior - [Lifetimes Avanzados](https://sharpskill.dev/es/technologies/rust/preguntas-entrevista/advanced-lifetimes.md): 20 preguntas, Senior - [Type System](https://sharpskill.dev/es/technologies/rust/preguntas-entrevista/type-system.md): 20 preguntas, Senior - [Tokio & Async I/O](https://sharpskill.dev/es/technologies/rust/preguntas-entrevista/tokio-async.md): 22 preguntas, Senior - [Optimización de Rendimiento](https://sharpskill.dev/es/technologies/rust/preguntas-entrevista/performance-optimization.md): 20 preguntas, Senior - [Memory Management](https://sharpskill.dev/es/technologies/rust/preguntas-entrevista/memory-management.md): 20 preguntas, Senior - [Web Frameworks](https://sharpskill.dev/es/technologies/rust/preguntas-entrevista/web-frameworks.md): 22 preguntas, Senior - [Database Integration](https://sharpskill.dev/es/technologies/rust/preguntas-entrevista/database-integration.md): 20 preguntas, Senior - [Patrones de diseño en Rust](https://sharpskill.dev/es/technologies/rust/preguntas-entrevista/design-patterns.md): 20 preguntas, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/es/technologies/rust/preguntas-entrevista/smart-pointers