
Traits avanzados
Associated types vs generics, GATs, trait objects, palabra clave dyn, object safety, vtables
1¿Cuál es la diferencia principal entre un associated type y un parámetro generic en un trait?
¿Cuál es la diferencia principal entre un associated type y un parámetro generic en un trait?
Respuesta
Un associated type permite solo una implementación del trait por tipo, mientras que un parámetro generic permite varias implementaciones. Con un associated type, el tipo lo determina la propia implementación, lo que simplifica la inferencia de tipos y evita especificar el tipo en cada uso.
2¿Qué palabra clave se usa para crear un trait object en Rust?
¿Qué palabra clave se usa para crear un trait object en Rust?
Respuesta
La palabra clave dyn se usa para crear un trait object en Rust. Indica que el dispatch de métodos ocurrirá dinámicamente en tiempo de ejecución a través de una vtable, a diferencia del dispatch estático con generics que se resuelve en tiempo de compilación.
3¿Qué es una vtable en el contexto de los trait objects?
¿Qué es una vtable en el contexto de los trait objects?
Respuesta
Una vtable (virtual table) es una tabla de punteros a las implementaciones de los métodos del trait para un tipo concreto. Se usa para el dispatch dinámico de los trait objects, lo que permite llamar al método correcto en tiempo de ejecución sin conocer el tipo concreto en tiempo de compilación.
¿Qué condición debe cumplir un trait para ser object-safe?
¿Por qué el trait Clone no es object-safe?
+19 preguntas de entrevista
Otros temas de entrevista Rust
Fundamentos de Rust
Ownership & Borrowing
Structs & Enums
Manejo de errores
Colecciones
Módulos y Paquetes
Traits
Generics
Lifetimes
Iterators & Closures
Smart Pointers
Concurrency Basics
async/await
Testing
Cargo & Ecosystem
Pattern Matching
Macros
Serde y serialización
Unsafe Rust
Lifetimes Avanzados
Type System
Tokio & Async I/O
Optimización de Rendimiento
Memory Management
Web Frameworks
Database Integration
Patrones de diseño en Rust
Domina Rust para tu próxima entrevista
Accede a todas las preguntas, flashcards, tests técnicos, ejercicios de code review y simuladores de entrevista.
Empieza gratis