Является ли `return 5;` оператором или выражением в Rust? - PullRequest
0 голосов
/ 24 сентября 2018

Я не придирчивый, но из Заявления и выражения :

На самом деле мы уже использовали выражения и выражения.Операторы - это инструкции, которые выполняют какое-то действие и не возвращают значение.Выражения оценивают полученное значение.Давайте посмотрим на некоторые примеры.

......

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

Так что для return 5; это оператор или выражение?Если это оператор, оператор не должен возвращать значение;если это выражение, выражение не должно заканчиваться точкой с запятой.

1 Ответ

0 голосов
/ 24 сентября 2018

Формулировка там неточная.Когда он говорит: «оператор ... не будет возвращать значение», это означает, что оператор не обрабатывается путем вычисления его в конечное значение (как выражение), а скорее обрабатывается путем его выполнения.В случае оператора return выполнение принимает форму выхода из текущей функции, передавая возвращаемое значение вызывающей функции.

return 5;, безусловно, является оператором.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...