
Ownership & Borrowing
Quy tắc ownership, move semantics, borrowing (&T, &mut T), lifetimes, tham chiếu treo (dangling)
1Ownership trong Rust là gì?
Ownership trong Rust là gì?
Câu trả lời
Ownership là một hệ thống nền tảng trong Rust giúp đảm bảo an toàn bộ nhớ mà không cần garbage collector. Mỗi giá trị có một owner duy nhất, và bộ nhớ được tự động giải phóng khi owner ra khỏi scope. Hệ thống này ngăn chặn data races và lỗi use-after-free tại thời điểm biên dịch.
2Một giá trị có thể có bao nhiêu owner trong Rust?
Một giá trị có thể có bao nhiêu owner trong Rust?
Câu trả lời
Trong Rust, một giá trị chỉ có thể có một owner tại một thời điểm. Đây là quy tắc đầu tiên của ownership. Khi ownership được chuyển giao (move), owner trước đó không thể truy cập giá trị nữa. Quy tắc này đảm bảo rằng không bao giờ có hai phần của mã có thể sửa đổi hoặc giải phóng cùng một vùng bộ nhớ.
3Điều gì xảy ra khi một biến ra khỏi scope trong Rust?
Điều gì xảy ra khi một biến ra khỏi scope trong Rust?
Câu trả lời
Khi một biến ra khỏi scope, Rust tự động gọi hàm drop để giải phóng bộ nhớ. Hành vi này có tính xác định và dự đoán được, khác với garbage collector vốn giải phóng bộ nhớ một cách không xác định. Mẫu hình này được gọi là RAII (Resource Acquisition Is Initialization).
Move trong Rust là gì?
Những kiểu nào triển khai trait Copy trong Rust?
+19 câu hỏi phỏng vấn
Các chủ đề phỏng vấn Rust khác
Cơ bản về Rust
Structs & Enums
Xử lý lỗi
Collections
Modules & Packages
Traits
Generics
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í