Structs (Estruturas) Nomeadas

Como C e C++, Rust tem suporte para structs personalizadas:

XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Speaker Notes

This slide should take about 10 minutes.

Pontos Chave:

  • Structs funcionam como em C ou C++.
    • Como em C++, e ao contrĂĄrio de C, nenhum typedef Ă© necessĂĄrio para definir um tipo.
    • Ao contrĂĄrio do C++, nĂŁo hĂĄ herança entre structs.
  • Este pode ser um bom momento para que as pessoas saibam que existem diferentes tipos de structs.
    • Structs de tamanho zero (por exemplo, struct Foo;) podem ser usadas ao implementar um trait em algum tipo, mas nĂŁo possuem nenhum dado que vocĂȘ deseja armazenar nelas.
    • O prĂłximo slide apresentarĂĄ as structs de tuplas usadas quando o nome dos campos nĂŁo sĂŁo importantes.
  • Se vocĂȘ jĂĄ tiver variĂĄveis com os nomes corretos, poderĂĄ criar a struct usando uma abreviação.
  • A sintaxe ..avery permite copiar a maioria dos campos de uma struct sem precisar explicitar seus tipos. Ela deve ser sempre o Ășltimo elemento.