Іменовані структури

Подібно до C і C++, Rust підтримує користувальницькі структури:

XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Speaker Notes

This slide should take about 10 minutes.

Ключові моменти:

  • Структури працюють як у C або C++.
    • Як і в C++, і на відміну від C, для визначення типу не потрібен typedef.
    • На відміну від C++, між структурами немає успадкування.
  • Це може бути вдалий час, щоб повідомити людям, що існують різні типи структур.
    • Структури нульового розміру (наприклад, struct Foo;) можуть бути використані при реалізації трейту на якомусь типі, але не мають даних, які ви хочете зберігати у самому значенні.
    • На наступному слайді буде представлено структури кортежу, які використовуються, коли імена полів не важливі.
  • Якщо у вас уже є змінні з правильними іменами, ви можете створити структуру за допомогою скорочення:
  • Синтаксис ..avery дозволяє нам скопіювати більшість полів зі старої структури без необхідності явного введення всіх полів. Це завжди має бути останнім елементом.