Программалау оқулық Алматы, 012 Қазақстан Республикасы Білім жəне ғылым министрлігінің «Оқулық»


f функционалдық объектісін, ал екінші параметр ретінде оны- мен түйістірілетін  value



Pdf көрінісі
бет340/465
Дата09.01.2023
өлшемі3,66 Mb.
#60709
түріПрограмма
1   ...   336   337   338   339   340   341   342   343   ...   465
Байланысты:
аибм сплюс

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
функциясының үшінші параметрі 
бинарлы функция немесе функционалдық объект болуы керек. 


Достарыңызбен бөлісу:
1   ...   336   337   338   339   340   341   342   343   ...   465




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет