Rust

Type System

Zero-cost abstractions, newtype pattern, type aliases, phantom types, const generics

20 perguntas de entrevista·
Senior
1

O que é uma zero-cost abstraction em Rust?

Resposta

Uma zero-cost abstraction é uma abstração que não gera nenhum custo em tempo de execução comparada ao código equivalente escrito manualmente. O compilador Rust otimiza essas abstrações de modo que o código gerado seja tão eficiente quanto código de baixo nível escrito à mão, sem overhead adicional.

2

Qual é a principal vantagem do newtype pattern em Rust?

Resposta

O newtype pattern permite criar um novo tipo distinto que encapsula um tipo existente, oferecendo segurança de tipos em tempo de compilação. Isso evita confundir valores do mesmo tipo subjacente mas com significados diferentes, como IDs de usuário e IDs de produto ambos representados como inteiros.

3

Como declarar um type alias em Rust?

Resposta

Um type alias é declarado com a palavra-chave type seguida do nome do alias e do tipo de destino. Por exemplo, type Kilometers = i32 cria um alias para i32. Diferentemente do newtype pattern, um type alias não é um novo tipo distinto, mas apenas um sinônimo que pode ser usado de forma intercambiável com o tipo original.

4

Qual é a diferença entre um type alias e um newtype em termos de type safety?

5

O que é um phantom type em Rust?

+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