өзіндік предикаттарын сипаттай алады. Бұл əрекет контейнер қолданушы
анықтайтын типтегі элементтерден тұратын кезде қажет. Мысалы, 197 б.
Предикаттарды қолдану мысалдары 367, 391, 394 беттерде берілген.
366
Терістеуіштер
Қарастырылатын
not1
жəне
not2
терістеуіштері сəйкесінше қарама-
қарсы унарлы жəне бинарлы предикаттарды алу үшін қолданылады.
Терістеуіштерді қолдану өте жеңіл. Мысалы,
less()
предикатының
инверсиясын алу үшін,
not2(less())
өрнегін жазу керек. Ол
greater_equal
өрнегіне эквивалентті болып табылады.
Терістеуіштер қолданушылар тағайындаған предикаттарды инверсия-
лау (терістеу) үшін қолданылады, өйткені стандартты предикаттар үшін
кітапханада оларға сəйкес қарама-қарсы объектілер бар.
Терістеуіштердің жүзеге асырылуын қарастырайық. Кітапханада
unary_function
жəне
binary_function
объектілерінің өздеріне сəйкес
ұрпақтары болып табылатын
unary_negate
жəне
binary_negate
сияқты
функционалдық объектілері сипатталған. Бұл кластар конструктордың
параметрі ретінде қажетті тип предикаты болып табылатын объектіні
қабылдайды:
Достарыңызбен бөлісу: