Double Calc(double Op1, double Op2, char Oper)

If (Ошибка)

Определение функций в программе

Любая функция состоит из двух основных элементов: заголовка и тела функции.

Заголовок функции имеет следующий формат:

<Тип возвращаемого значения> <Идентификатор – имя функции> (<Параметры>)

Тело функции представляет собой блок инструкций языка программирования, разделенных символами “точка с запятой”:

{

<Инструкция 1>;

<Инструкция 2>;

………………….

<Инструкция N>;

}

Например:

double Example (double d, int k)

{

double r;

r = d * k;

return r;

}

Внутри тела функции могут использоваться любые инструкции языка программирования. Количество инструкций не ограничено (но лучше разрабатывать небольшие по размеру функции – их легче отлаживать, меньше вероятность допустить ошибку).

Функция может возвращать одно, сформированное внутри функции, значение через свое имя. Тип данных этого значения определяется элементом заголовка <Тип возвращаемого значения>. Тип возвращаемого значения может быть любым, за исключением типа массива (но указателем он может быть).

Не все функции должны возвращать значения. В этом случае <Тип возвращаемого значения> задается ключевым словом void, которое означает – “пусто” – возвращаемое значение отсутствует:

void ErrMessage (int N)

{

cout << “\nВнимание! Ошибка номер ” << N << “\n\n”;

}

Завершение работы функции (инструкция return)

Если функция не возвращает через свое имя никакого значения, то она завершается после выполнения последней инструкции тела функции. При необходимости досрочного завершения работы функции необходимо использовать инструкцию return. Например:

void Proc ()

{

……..

return;

……..

cout << “\nНормальное завершение функции\n ”;

}

Если произошла ошибка, то выполняется инструкция return, и выполнение функции немедленно прекращается (осуществляется выход из функции). Если ошибки не было, то функция продолжит свою работу до последней инструкции и нормально завершит свою работу, когда достигнет конца блока тела функции.

Таким образом, инструкция return приводит к немедленному завершению работы функции.

В одной и той же функции могут быть использованы несколько инструкций return.

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

{

switch (Oper)

{

case '+': return Op1 + Op2;

case '-': return Op1 - Op2;

case '/':

if (!Op2)

return Op1 / Op2;


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: