R Справочное руководство по С++

R.8.3 Определения функций.

   


Назад  |  Вперёд

Определения функций имеют вид

           определение-функции:
             спецификации-описания opt описатель инициализатор-ctor тело-функции

           тело-функции:
             составной-оператор

Конструкция описатель из определения-функции должна содержать описатель вида

           D1 ( список-описаний-параметров ) список-спецификаций-cv  opt

в соответствии с определениями из $$R.8.2.5

Формальные параметры относятся к области видимости самого большого блока тела-функции.

Приведем пример полного определения функции.

           int max( int a, int b, int c)
           {
             int m = (a > b) ? a : b;
              return (m > c) ? m : c;
           }

Здесь int представляет спецификации-описания, max(int a, int b, int c) - описатель, а { /* ... */ } - тело-функции.

Конструкция инициализатор-ctor используется только в конструкторах, см. $$R.9.3.1 и $$R.12.6.

Конструкция список-спецификаций-cv может участвовать: в описании нестатической функции-члена, в определении нестатической функции-члена или в описании указателя на функцию-член, см. $$R.9.3.1. Она относится к типу функции.

Отметим, что неиспользуемым формальным параметрам имена можно не давать, например,

           void print(int a, int)
           {
             printf("a = %d\n",a);
           }

Назад  |  Вперёд


OtDiatlovaOU
К началу книги

Оформление и дизайн книги OtDiatlovaOU.
Вся книга, архив.