Rust

Generics

Generic Funktionen, Structs, Enums, Trait Bounds, where clause, Monomorphization

20 Interview-Fragen·
Mid-Level
1

Was ist die korrekte Syntax zum Deklarieren einer generic Funktion in Rust?

Antwort

In Rust werden generic Type Parameter mit angle brackets nach dem Funktionsnamen deklariert. Die Syntax fn name<T>(param: T) gibt an, dass T ein Type Parameter ist, der bei der Verwendung bestimmt wird. Der Compiler erzeugt anschließend spezialisierten Code für jeden konkreten Typ, der beim Aufruf der Funktion verwendet wird.

2

Wie deklariert man eine generic Struct mit einem Feld vom Typ T?

Antwort

Eine generic Struct wird mit dem Type Parameter in angle brackets nach dem Struct-Namen deklariert. Die Syntax struct Name<T> { field: T } ermöglicht das Erstellen einer wiederverwendbaren Struktur mit verschiedenen Typen. Der Typ T kann dann in Feldern und Methoden verwendet werden, die mit dieser Struct verknüpft sind.

3

Was ist Monomorphization in Rust?

Antwort

Monomorphization ist der Prozess, bei dem der Rust-Compiler spezialisierten Maschinencode für jeden konkreten Typ erzeugt, der mit einem Generic verwendet wird. Wird beispielsweise eine generic Funktion mit i32 und String aufgerufen, erstellt der Compiler zwei verschiedene Versionen dieser Funktion. Dies gewährleistet optimale Performance ohne Laufzeit-Overhead.

4

Wie fügt man einen trait bound zu einem generischen Parameter T hinzu?

5

Was ist der Unterschied zwischen der Syntax impl<T> Struct<T> und impl Struct<i32>?

+17 Interview-Fragen

Meistere Rust für dein nächstes Interview

Zugang zu allen Fragen, Flashcards, technischen Tests, Code-Review-Übungen und Interview-Simulatoren.

Kostenlos starten