Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Шаблоны и сопоставление

Шаблоны — это специальный синтаксис Rust для сопоставления со структурой типов, как сложных, так и простых. Использование шаблонов вместе с выражениями match и другими конструкциями дает вам больше контроля над потоком управления программы. Шаблон состоит из некоторой комбинации следующих элементов:

  • литералы
  • деструктурированные массивы, перечисления, структуры или кортежи
  • переменные
  • групповые символы
  • заполнители

Некоторые примеры шаблонов: x, (a, 3) и Some(Color::Red). В контекстах, где шаблоны допустимы, эти компоненты описывают форму данных. Затем наша программа сопоставляет значения с шаблонами, чтобы определить, имеют ли данные правильную форму для продолжения выполнения определенного участка кода.

Чтобы использовать шаблон, мы сравниваем его с некоторым значением. Если шаблон соответствует значению, мы используем части значения в нашем коде. Вспомните выражения match из главы 6, которые использовали шаблоны, например пример с машиной для сортировки монет. Если значение подходит под форму шаблона, мы можем использовать именованные части. Если не подходит, код, связанный с шаблоном, не будет выполнен.

Эта глава является справочником по всему, что связано с шаблонами. Мы рассмотрим допустимые места использования шаблонов, различие между опровержимыми и неопровержимыми шаблонами, а также разные виды синтаксиса шаблонов, которые вы можете встретить. К концу главы вы будете знать, как использовать шаблоны, чтобы ясно выражать многие концепции.