Вы конвертируете переменную одноразового использования в возврат этой вещи напрямую.Это разрешено и в этом случае предпочтительнее, поскольку позволяет избежать возможных ошибок при объявлении неправильного типа для myVariable
.
. В ->
нет ничего особенного в контексте return
.Вы можете вернуть любое выражение , и такие вещи, как ->
, могут быть частью выражения.
Если вам интересно, вы можете прочитать спецификацию C , гдеэто прописано:
return [ expr ] ';'
Таким образом, это означает, что если foo->bar
является допустимым выражением, как, например, это компилируемый бит кода, то return foo->bar;
также является допустимым.Ваш код подразумевает, что foo
- это своего рода указатель на что-то, что имеет bar
в качестве свойства.Если это не так, то ни одна из версий не будет работать.Это также зависит от типа возвращаемого значения рассматриваемой функции, соответствующего типу этого свойства.