f функционалдық объектісін, ал екінші параметр ретінде оны-
мен түйістірілетін
value мəнін қабылдайтын функциялардың үлгілері ретінде
жүзеге асырылған. Функцияны шақыру нəтижесі функционалдық объект бо-
лып табылады, ол
f кіріс объектісінен оның екінші немесе бірінші аргументіне
value мəнін «орналастыру» арқылы құрылады.
Қайтарылатын функционалдық объектінің типін сипаттау үшін кітапханада
binder2nd жəне
binderlst кластарының шаблондары анықталған. Төменде
байланыстырғыштардың шаблондары көрсетілген:
template binder2nd<0p> bind2nd(const Op& op, const T& x); template binderlst bindlst(const 0p& op, const T& x); Мұндағы
Op – функционалдық объектінің типі,
Т – түйісетін мəннің типі.
Мысалы, бүтін сандық жиымның 40-тан кіші элементтерінің санын
анықтау керек болсын делік:
#include #include #include using namespace std; int main(){ int m[8] = {45, 65, 36, 25, 674, 2, 13, 35}; cout << count_if(m, m + 8, bind2nd(less(),40)); return 0; } Бұл программада элементтер санын есептеу үшін стандартты кітапхананың
count_if алгоритмі (375 б. қараңыз) қолданылады. Оны пайдалану үшін
тақырыптық файлын іске қосу керек.
count_if үшін алғашқы
екі параметр ретінде өңделуші тізбектің басы мен соңын анықтайтын ите-
раторлар алынуы керек. Жиымтың итераторлары ретінде оның элементіне
нұсқауыштар қолданылады.
count_if функциясының үшінші параметрі
бинарлы функция немесе функционалдық объект болуы керек.
0p>