Rust

Generics

Generic functions, structs, enums, trait bounds, where clause, monomorphization

20 domande da colloquioยท
Mid-Level
1

What is the correct syntax for declaring a generic function in Rust?

Risposta

In Rust, generic type parameters are declared using angle brackets after the function name. The syntax fn name<T>(param: T) indicates that T is a type parameter that will be determined at usage. The compiler then generates specialized code for each concrete type used when calling the function.

2

How to declare a generic struct with a field of type T?

Risposta

A generic struct is declared with the type parameter in angle brackets after the struct name. The syntax struct Name<T> { field: T } allows creating a reusable structure with different types. The type T can then be used in fields and methods associated with this struct.

3

What is monomorphization in Rust?

Risposta

Monomorphization is the process by which the Rust compiler generates specialized machine code for each concrete type used with a generic. For example, if a generic function is called with i32 and String, the compiler creates two distinct versions of that function. This ensures optimal performance without runtime overhead.

4

How to add a trait bound on a generic parameter T?

5

What is the difference between impl<T> Struct<T> and impl Struct<i32> syntax?

+17 domande da colloquio

Padroneggia Rust per il tuo prossimo colloquio

Accedi a tutte le domande, flashcards, test tecnici, esercizi di code review e simulatori di colloquio.

Inizia gratis