Rust

Generics

Generic fonksiyonlar, struct, enum, trait bounds, where clause, monomorphization

20 mülakat soruları·
Mid-Level
1

Rust'ta generic bir fonksiyon tanımlamak için doğru söz dizimi nedir?

Cevap

Rust'ta generic type parameter'lar, fonksiyon adından sonra angle brackets kullanılarak tanımlanır. fn name<T>(param: T) söz dizimi, T'nin kullanım anında belirlenecek bir type parameter olduğunu gösterir. Derleyici ardından fonksiyon çağrılırken kullanılan her somut tip için özelleştirilmiş kod üretir.

2

T tipinde bir alana sahip generic bir struct nasıl tanımlanır?

Cevap

generic bir struct, struct adından sonra angle brackets içine yazılan type parameter ile tanımlanır. struct Name<T> { field: T } söz dizimi, farklı tiplerle yeniden kullanılabilir bir yapı oluşturmaya olanak tanır. T tipi daha sonra bu struct'a ilişkin alanlarda ve metotlarda kullanılabilir.

3

Rust'ta monomorphization nedir?

Cevap

monomorphization, Rust derleyicisinin bir generic ile kullanılan her somut tip için özelleştirilmiş makine kodu ürettiği süreçtir. Örneğin, generic bir fonksiyon i32 ve String ile çağrılırsa, derleyici o fonksiyonun iki ayrı sürümünü oluşturur. Bu, çalışma zamanında ek yük olmadan en iyi performansı garanti eder.

4

Bir generic parametre T'ye trait bound nasıl eklenir?

5

impl<T> Struct<T> ve impl Struct<i32> söz dizimleri arasındaki fark nedir?

+17 mülakat soruları

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