С++ для начинающих



     Роллы доставка пермь еще на сайте. | видео продакшн полного цикла- TimeLine. |     

Когда использовать встроенные функции-члены - часть 2


inline void Screen::move( int r, int c )

{ // переместить курсор в абсолютную позицию

   if ( checkRange( r, c ) ) // позиция на экране задана корректно?

   {

      int row = (r-1) * _width; // смещение начала строки

      _cursor = row + c - 1;

   }

}

Функция get(int, int) объявляется встроенной с помощью слова inline:

class Screen {

public:

   inline char get( int, int );

   // объявления других функций-членов не изменяются

};

Определение функции следует после объявления класса. При этом слово inline можно опустить:

char Screen::get( int r, int c )

{

   move( r, c );   // устанавливаем _cursor

   return get();   // вызываем другую функцию-член get()

}

Так как встроенные функции-члены должны быть определены в каждом исходном файле, где они вызываются, то встроенную функцию, не определенную в теле класса, следует поместить в тот же заголовочный файл, в котором определен ее класс. Например, представленные ранее определения move() и get() должны находиться в заголовочном файле Screen.h после определения класса Screen.




Содержание  Назад  Вперед