Тип 30 (винтовка)
- 1 year ago
- 0
- 0
В программировании тип возвращаемого значения ( англ. return type ) или тип результата ( англ. result type ) определяет и накладывает ограничения на тип данных , возвращаемых методом или функцией . Во многих языках программирования (особенно это касается языков со статической типизацией , как например, Java , C++ и Си ) возвращаемый тип должен быть явно указан при объявлении функции.
В языке
Си
для возврата пользовательских значений вызвавшему коду используется оператор
return
, либо значение по умолчанию при автоматическом завершении работы функции после её закрывающей фигурной скобки. При этом в функции может быть несколько операторов
return
, которые могут вызываться в зависимости от заранее заданных условий.
Все типы функций, кроме типа
void
возвращают значения, указываемое выражением в операторе
return
. Стандарт
C89
допускал выполнение оператора
return
без указания выражения внутри функции, тип которой отличен от void, и в этом случае происходил возврат какого-либо произвольного значения. Но стандарт
C99
уже регламентировал обязательное указание возвращаемого значения. То есть, если есть указание, что функция возвращает какое-либо значение, то оно должно быть заранее указано для оператора
return
. При этом в случае выполнения функции, не относящейся к типу void, возвращается произвольное значение.
Также в языке Си предусмотрена возможность возврата функцией указателя. Чтобы функция могла возвратить указатель, она должна быть объявлена как возвращающая указатель на нужный тип. То есть, тип возвращаемого указателя должен декларироваться явно. Например, нельзя объявлять возвращаемый тип как int *, если возвращается указатель типа char *. В случае необходимости возврата «универсального» указателя (то есть указателя, который может указывать на данные любого типа) тип результата функции следует определить как void * .
Пример на языке Java:
public int someMethod()
Здесь возвращаемый тип — int (целое число). Таким образом, программа может полагаться на метод, возвращающий значение типа int . Для случаев, когда подпрограмма (функция) не возвращает никакого значения используются различные механизмы, например: возвращаемый тип void в некоторых языках программирования:
public void returnNothing()