
Generics
Hàm generic, struct, enum, trait bounds, where clause, monomorphization
1Cú pháp đúng để khai báo một hàm generic trong Rust là gì?
Cú pháp đúng để khai báo một hàm generic trong Rust là gì?
Câu trả lời
Trong Rust, các type parameter generic được khai báo bằng angle brackets sau tên hàm. Cú pháp fn name<T>(param: T) cho biết T là một type parameter sẽ được xác định khi sử dụng. Sau đó compiler tạo ra mã chuyên biệt cho từng kiểu cụ thể được dùng khi gọi hàm.
2Làm thế nào để khai báo một struct generic với một trường kiểu T?
Làm thế nào để khai báo một struct generic với một trường kiểu T?
Câu trả lời
Một struct generic được khai báo với type parameter trong angle brackets sau tên struct. Cú pháp struct Name<T> { field: T } cho phép tạo một cấu trúc có thể tái sử dụng với các kiểu khác nhau. Kiểu T sau đó có thể được dùng trong các trường và phương thức liên kết với struct này.
3Monomorphization trong Rust là gì?
Monomorphization trong Rust là gì?
Câu trả lời
Monomorphization là quá trình mà compiler Rust tạo ra mã máy chuyên biệt cho từng kiểu cụ thể được dùng với một generic. Ví dụ, nếu một hàm generic được gọi với i32 và String, compiler tạo ra hai phiên bản riêng biệt của hàm đó. Điều này đảm bảo hiệu năng tối ưu mà không có overhead lúc chạy.
Làm thế nào để thêm một trait bound vào tham số generic T?
Sự khác biệt giữa cú pháp impl<T> Struct<T> và impl Struct<i32> là gì?
+17 câu hỏi phỏng vấn
Các chủ đề phỏng vấn Rust khác
Cơ bản về Rust
Ownership & Borrowing
Structs & Enums
Xử lý lỗi
Collections
Modules & Packages
Traits
Lifetimes
Iterators & Closures
Smart Pointers
Concurrency Basics
async/await
Testing
Cargo & Ecosystem
Pattern Matching
Macro
Serde & Serialization
Unsafe Rust
Trait nâng cao
Lifetime Nâng Cao
Type System
Tokio & Async I/O
Tối ưu hóa Hiệu suất
Memory Management
Web Frameworks
Database Integration
Design Pattern trong Rust
Nắm vững Rust cho lần phỏng vấn tiếp theo
Truy cập tất cả câu hỏi, flashcards, bài kiểm tra kỹ thuật, bài tập code review và mô phỏng phỏng vấn.
Bắt đầu miễn phí