Junior — Middle
135
Kas on võimalik eristada binaarseid predikaate unaarsetest ning millised on nende peamised erinevused?
Ettevõtted, kust küsiti
Телкор
Vastus AI-lt
sobes.tech AI
Унарные и бинарные предикаты — это функции или функциональные объекты, которые возвращают булево значение, но отличаются числом аргументов:
- Унарный предикат принимает один аргумент и возвращает
trueилиfalseв зависимости от условия, например, проверка, является ли число чётным. - Бинарный предикат принимает два аргумента и сравнивает их, возвращая
trueилиfalse, например, сравнение двух чисел на равенство или меньше.
Отличить их можно по сигнатуре функции:
// Унарный предикат
bool isEven(int x);
// Бинарный предикат
bool less(int a, int b);
В шаблонах и алгоритмах STL часто используются оба типа предикатов: унарные для фильтрации элементов, бинарные — для сравнения и сортировки. Главное отличие — количество параметров и смысл проверки.