Расти

Выражение против оператора в Rust

Давайте посмотрим разницу между ними на примере.

Выражение

У выражения может быть две роли: оно всегда создает значение и может иметь эффекты (иначе называемые «побочными эффектами»). Выражение оценивается как значение и оказывает влияние во время оценки. Многие выражения содержат подвыражения (операнды). Значение каждого вида выражения диктует несколько вещей:

  • Следует ли оценивать подвыражения при оценке выражения
  • Порядок, в котором оцениваются подвыражения
  • Как объединить значения подвыражений, чтобы получить значение выражения

Таким образом, структура выражений определяет структуру выполнения. Блоки — это просто другой вид выражений, поэтому блоки, операторы, выражения и снова блоки могут рекурсивно вкладываться друг в друга на произвольную глубину.

Это выражение с «x+1» без точки с запятой «;».

Заявление

оператор — это компонент блока, который, в свою очередь, является компонентом внешнего выражения или функции.

В Rust есть два типа операторов: операторы объявления и операторы выражения.

x+1;

Это заявление.

~~~Удачного кодирования~~~