Rust

Generics

Funções generic, structs, enums, trait bounds, where clause, monomorphization

20 perguntas de entrevista·
Mid-Level
1

Qual é a sintaxe correta para declarar uma função generic em Rust?

Resposta

Em Rust, os type parameters generic são declarados usando angle brackets após o nome da função. A sintaxe fn name<T>(param: T) indica que T é um type parameter que será determinado no uso. O compilador então gera código especializado para cada tipo concreto usado ao chamar a função.

2

Como declarar uma struct generic com um campo do tipo T?

Resposta

Uma struct generic é declarada com o type parameter entre angle brackets após o nome da struct. A sintaxe struct Name<T> { field: T } permite criar uma estrutura reutilizável com diferentes tipos. O tipo T pode então ser usado nos campos e métodos associados a essa struct.

3

O que é monomorphization em Rust?

Resposta

A monomorphization é o processo pelo qual o compilador Rust gera código de máquina especializado para cada tipo concreto usado com um generic. Por exemplo, se uma função generic é chamada com i32 e String, o compilador cria duas versões distintas dessa função. Isso garante desempenho ideal sem overhead em tempo de execução.

4

Como adicionar um trait bound a um parâmetro generic T?

5

Qual é a diferença entre as sintaxes impl<T> Struct<T> e impl Struct<i32>?

+17 perguntas de entrevista

Domine Rust para sua proxima entrevista

Acesse todas as perguntas, flashcards, testes tecnicos, exercicios de code review e simuladores de entrevista.

Comece gratis