C++——仿函数

它是个类,不是个函数。

模仿函数的类:能像普通函数一样传入给定数量的参数,还能存储或者处理更多我们需要的有用信息

https://www.cnblogs.com/decade-dnbc66/p/5347088.html

 

class StringAppend{
    public:
        explicit StringAppend(const string& str) : ss(str){}

        void operator() (const string& str) const{
             cout<<str<<' '<<ss<<endl;
        }

    private:
        const string ss;  
};

StringAppend myFunc("is world");
myFunc("hello");
>>>hellois world

 

class ShorterThan {
    public:
        explicit ShorterThan(int maxLength) : length(maxLength) {}
        bool operator() (const string& str) const {
            return str.length() < length;
        }
    private:
        const int length;
};
count_if(myVector.begin(), myVector.end(), ShorterThan(length));//直接调用即可

 

原文链接: https://www.cnblogs.com/yrm1160029237/p/10222097.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍;

也有高质量的技术群,里面有嵌入式、搜广推等BAT大佬

    C++——仿函数

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/348645

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年3月2日 上午5:10
下一篇 2023年3月2日 上午5:10

相关推荐