
Smart Pointers
Box<T>, Rc<T>, Arc<T>, RefCell<T>, interior mutability, Deref ve Drop trait'leri
1Rust'ta Box<T>'nin başlıca kullanım amacı nedir?
Rust'ta Box<T>'nin başlıca kullanım amacı nedir?
Cevap
Box<T>, verileri stack yerine heap üzerinde tahsis eder. Bu, derleme zamanında boyutu bilinmeyen tipler (özyinelemeli tipler) için, büyük verilerin ownership'ini kopyalamadan aktarmak için ya da trait object oluşturmak için kullanışlıdır. Box pointer'ının kendisi stack üzerinde sabit bir boyuta sahiptir.
2Rust'ta bağlı liste gibi özyinelemeli bir tip nasıl tanımlanır?
Rust'ta bağlı liste gibi özyinelemeli bir tip nasıl tanımlanır?
Cevap
enum List { Cons(i32, List), Nil } gibi doğrudan özyinelemeli bir tip derlenmez çünkü derleyici boyutu belirleyemez. Box<List> kullanmak, sabit boyutlu (pointer) bir dolaylama oluşturur ve böylece derleyici tipin boyutunu hesaplayabilir.
3Rc<T> ile Arc<T> arasındaki temel fark nedir?
Rc<T> ile Arc<T> arasındaki temel fark nedir?
Cevap
Rc (Reference Counted), atomik olmayan bir referans sayacı kullanır; bu onu daha performanslı kılar ancak tek bir iş parçacığıyla sınırlar. Arc (Atomically Reference Counted), sayaç için atomik işlemler kullanır ve iş parçacıkları arasında paylaşıma izin verir, ancak küçük bir performans yükü getirir.
Rust'ta Deref trait'i neyi mümkün kılar?
Rust'ta interior mutability (iç değiştirilebilirlik) nedir?
+19 mülakat soruları
Diğer Rust mülakat konuları
Rust Temelleri
Ownership & Borrowing
Structs & Enums
Hata Yönetimi
Koleksiyonlar
Modüller ve Paketler
Traits
Generics
Lifetimes
Iterators & Closures
Concurrency Basics
async/await
Testing
Cargo & Ecosystem
Pattern Matching
Makrolar
Serde ve Serileştirme
Unsafe Rust
Gelişmiş Trait'ler
İleri Düzey Lifetime
Type System
Tokio & Async I/O
Performans Optimizasyonu
Memory Management
Web Frameworks
Database Integration
Rust Tasarım Desenleri
Bir sonraki mülakatın için Rust'de uzmanlaş
Tüm sorulara, flashcards'a, teknik testlere, code review alıştırmalarına ve mülakat simülatörlerine eriş.
Ücretsiz başla