Стандартные библиотеки STL ф-ций называют алгоритмами, что подразумевает их более общее назначение в сравнении с другими ф-циями.Стандартн-е ф-ции реализуются как шаблоны или шаблон-е клоссы(назыв. Объектами-ф-циями) с перегруженными операциями вызова ф-ции,котор. Можно использовать для осуществления разнообразных действий над данными контейнера.
Ф-ции и предикаты.
Для выполнения операции над данными,размещаемыми в контейнерах библиотеки содержат алгоритмы,такие как: Accumulate()и for-each(),предназначенные для работы с элементами данных,например дла вектора с элементами типа double.
Vector<double> v double;
Можно написать следующую ф-цию,которая умножает число типа Double на 10.
void AFunction(double &rd){
rd*=10; }
Для того,чтобы эта ф-ция выполнялась над содержимым вектора, ее следует передать опер-ру for-each.
for-each(v double.begin(),v double.end(),AFunction);
Другая разновидность ф-ции назыв-ся предикатами.Эти ф-ции возвращают истиное или ложное значение типа bool или Int.Рассмотрим пример, в котором для поиска 1-го отриц-го значения в векторе можно написать ф-цию предикап IsMinus, которая возвращает истину,если переданное ей по ссылке значение<0.
bool IsMinus(const int &ri){
return ri<0; }
Затем можно определить вектор типа int и присвоить целое значение,воспользовавшись индексными выражениями.
vector<int> vint(5);
vint[0]=4;
vint[1]=18;
vint[2]=-9;
vint[3]=100;
vint[4]=2;
Для поиска в векторе vint 1-го отриц-го значения можно вызвать ф-цию find_if,передав ей по имени ф-цию предикап.
vector<int>::iterator 1=find_if(vint.begin(),vint.end(),IsMinus);
If(j==vint.end())
Cout<<”no negative values found”<<endl;
else cout<<”resalt of find ==”<<*j<<endl;
Оглавление
1. Цель и задача курса. Хар-ки и кач-во ПО.
2. Сложность ПО
Компоненты объектного подхода.
1)Абстрагирование
2)Ограничение доступа.
3) Модульность.
4)Иерархия.
5)Производные классы. Порождения, видимость, наследование.
6)Функции члены в производных классах.
7)Видимость.
8)Указатели производных классов
9)Наследование.
10)Констукторы и деструкторы в производных классах
11) Поля типа и виртуальные функции.
12) Виртуальные функции.
13) Использование шаблонов.
14)Обработка исключительных ситуаций (ИС) Возбуждение нескольких ИС
15)Блоки Try
16)Введение в использование библиотеки класса.
Компоненты STL
Заголовочные классы
Итераторы.
ф-ции и объекты-ф-ции.
