首页 > 编程笔记 > C++笔记 阅读:1,038

C++谓词函数(无师自通)

谓词函数是一个返回布尔值的函数。

一元谓词函数就是只釆用一个实参的函数。使用一元谓词函数可以确定一个给定对象是否具有某些特征。

例如,可以使用以下类创建函数对象,该函数对象就是一元谓词函数,它可以判断一个整数是奇数还是偶数:
class IsEven
{
    public:
        bool operator()(int x)
        {
            return x % 2 == 0;
        }
}
以下代码显示了如何使用通过该类创建的一个谓词函数对象:
int number;
cout << " Enter an integer:";
cin << number;
if (IsEven()(number))
{
    cout << " Even ";
}
else
{
    cout << " Odd ";
}
二元谓词函数就是釆用两个形参的谓词函数。使用二元谓词函数可以确定两个对象是否以某种方式相关联。

例如,可以使用以下类创建一个谓词函数,以确定一个整数是否比另外一个整数小:
class LessThan
{
    public:
        bool operator()(int a, int b)
        {
            return a < b;
        }
}
表达式 LessThan() 是一个函数对象,而 LessThan()(x,y) 则代表了使用实参 x 和 y 调用函数对象的结果。

编程帮,一个分享编程知识的公众号。跟着站长一起学习,每天都有进步。

通俗易懂,深入浅出,一篇文章只讲一个知识点。

文章不深奥,不需要钻研,在公交、在地铁、在厕所都可以阅读,随时随地涨姿势。

文章不涉及代码,不烧脑细胞,人人都可以学习。

当你决定关注「编程帮」,你已然超越了90%的程序员!

编程帮二维码
微信扫描二维码关注