Объектно-ориентированное программирование



         

Объектно-ориентированное программирование - стр. 75


item=items[ind];

return 0;

}

else return –1;

}

int iarray::count(){return citems;};             //получение числа элементов

В новой версии реализации массива выделен базовый класс basearray, в котором определены общие для массивов составляющие, независимо от типов элементов. В производном классе определен конкретный тип массива. В нашем случае тип массива int, хотя можно определить тип массива как float, как struct и т.п.

Класс iarray наследует от класса basearray конструктор. При создании объекта типа iarray в конструкторе iarray вызывается конструктор basearray. С помощью механизма наследования осуществляется скрытие информации. Появившийся описатель protected говорит о том, что следующие за ним переменные будут доступны в производном и доступны в классах и функциях, не принадлежащим к этим классам.

 2.3. Расширения языка С++

 

ФУНКЦИЯ inline

В функции #define проявляется много необычных эффектов связанных с многократным использованием аргументов. Все проблемы разрешила функция С++ inline, взятая из языка ADA. При обращение к функции с описателем inline не происходит реального вызова, а  исполняется код функции, который транслятор вставляет непосредственно в место обращения.

Это значительно позволяет экономить время на вызове функции. Ограничение только на размер функции, она должна быть достаточно короткой, например:

  Inline double sqr(double x){return x*x;}

Обычно функция помещается в header-файл- файл с расширением *.h, чтобы функция всегда была “под рукой” у транслятора. Другое ограничение, inline-функции не должны совершать циклы или ассемблерные вставки.

ФУНКЦИЯ OVERLOAD(ПЕРЕЗАГРУЖАЕМЫЕ)

Следующей функцией пришедшей из ADA является функция overload, позволяющая различить функции не только по имени, но и по типу аргумента, например:

double sqr(double x){return x*x;}

Обе спокойно уживаются в одной программе. При вызове будет использована одна из функций, какая решает тип аргумента.

ПАРАМЕТРЫ ФУНКЦИИ ПО УМОЛЧАНИЮ




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