当前位置: 首页 > news >正文

建设银行网站查询企业年金如何推广app更高效

建设银行网站查询企业年金,如何推广app更高效,wordpress安装知更鸟主题,淘宝做关键词的网站1、函数对象 1.1 概念 重载函数调用操作符的类,这个类的对象就是函数对象,在使用这个函数对象对应使用重载的()符号时,行为类似于函数调用,因此这个函数也叫仿函数。 注意:函数对象&#xff0…

1、函数对象

1.1 概念

        重载函数调用操作符的类,这个类的对象就是函数对象,在使用这个函数对象对应使用重载的()符号时,行为类似于函数调用,因此这个函数也叫仿函数。

注意:函数对象(仿函数)是一个类,不是函数。

        特点:

        a)函数对象可以传入参数、返回值

        b)可以使用类的成员参数记录函数对象的状态

        c)函数对象可以作为参数传递。

1.2 示例

        特点a、b使用:

//创建一个函数对象,
class Print {
public:void operator()(string &tex) {cout << tex << endl;pNum++;}int pNum{};
};int main() {string word{ "speak sth!" };Print print;print(word);print(word);print(word);print(word);cout << "" << print.pNum << endl;;system("pause");return 0;
}

        特点c:

class mData {
public:mData(int x,float y) {this->mX = x;this->mY = y;}~mData(){}int mX{};float mY{};
};class Sort {
public:bool operator()(mData& md1, mData& md2) {return md1.mX > md2.mX;}
};
void func(mData& md1, mData& md2) {Sort st;if (st(md1, md2)) {cout << " a > b" << endl;}else {cout << " a < b" << endl;}
}
int main() {vector<mData> vP{};vP.push_back(mData(1, 2.));vP.push_back(mData(4, 12.));func(vP[0], vP[1]);system("pause");return 0;
}

2、谓词

2.1 概念

        返回bool类型的仿函数为谓词,()内有一个参数为一元谓词、有两个参数为二元谓词。

2.2示例

        一元谓词:

//一元谓词创建:一元谓词bool返回值,一个传入参数
class findPass7 {
public:bool operator()(int val) {return val > 5;}
};
int main() {vector<int> v1;for (int i = 0; i < 10; ++i) {v1.push_back(i);}vector<int>::iterator iter = find_if(v1.begin(), v1.end(), findPass7());if (iter != v1.end()) {cout << "找到5,位于:" << (*iter) << endl;}else {cout << "没找到"<< endl;}system("pause");return 0;
}

注:如果想在stl中使用自定义的数据,类型,首先看这个函数有没有相关的重载,如下函数最右边的 _Pred

        使用二元谓词实现对自定义类的成员参数排序

class Person {
public:Person(int age, int length) {this->mAge = age;this->mLength = length;}int mAge;int mLength;
};
class getAgeMid {
public:bool operator()(Person& p1, Person& p2) {return p1.mAge > p2.mAge;}
};
int main() {vector<Person> Ps;Ps.push_back(Person(10,23));Ps.push_back(Person(20, 33));Ps.push_back(Person(50, 13));Ps.push_back(Person(40, 53));Ps.push_back(Person(30, 73));sort(Ps.begin(), Ps.end(), getAgeMid());for (vector<Person>::iterator iter = Ps.begin(); iter != Ps.end(); iter++) {cout << (*iter).mAge << " ";}cout << endl;system("pause");return 0;
}

3、stl内建函数对象 

3.1 分类与用法

        算术仿函数、关系仿函数、逻辑仿函数。

        引入头文件 : #include <functional> 即可使用

 3.2 算术仿函数

        功能:实现四则运算,negate是一元运算,其余都为二元运算。

        仿函数原型:

        

	//初始化算术仿函数plus<int> p;negate<int> ng;p(a, b);ng(79);

3.3 关系仿函数

        功能:实现关系对比

        仿函数原型:

        

         利用内建仿函数实现降序排序:

int main() {vector<int> v1;v1.push_back(10);v1.push_back(20);v1.push_back(50);v1.push_back(30);v1.push_back(40);for (vector<int>::iterator iter = v1.begin(); iter != v1.end(); iter++) {cout << (*iter) << " ";}cout << endl;sort(v1.begin(), v1.end(), greater<int>());for (vector<int>::iterator iter = v1.begin(); iter != v1.end(); iter++) {cout << (*iter) << " ";}cout << endl;system("pause");return 0;
}

3.4 逻辑仿函数

        功能:实现逻辑运算

        仿函数原型:

        

 

http://www.dt0577.cn/news/14237.html

相关文章:

  • 网站备案管理系统免费代理上网网站
  • wordpress insert语句seo专员岗位职责
  • 龙华公司做网站滁州网站seo
  • 如何建设公司网络营销网站百度sem
  • 江宁网站建设案例快速排名优化怎么样
  • 邯郸wap网站建设公司dsp投放方式
  • 靖江做网站百度风云榜官网
  • 网站设计 无锡平台seo
  • 贵阳网站建设哪家便宜长春今日头条新闻
  • 自己开发一个app需要多少钱seo视频教学网站
  • 建设工程施工合同法条网站关键词优化培训
  • 深圳建设局网站注册结构师培训360搜索网址是多少
  • 家政公司怎么注册西安seo排名
  • 中企动力全网门户网站杭州seo网站建设靠谱
  • 网站怎么做内链接地址网页制作教程视频
  • 网站开发技术有哪些湖人今日排名最新
  • 宠物论坛网站策划书网站优化一年多少钱
  • 做企业网站收费多少整合营销传播案例
  • 东莞网站设计哪家好橘子seo查询
  • 郑州市政府网站集约化建设平台如何制作网址
  • 做网站设计网站建设推广cps广告联盟网站
  • 网站的图片滚动怎么做的一般开车用什么导航最好
  • 邹平做网站优化大师怎么卸载
  • 淘宝客如何建设推广网站sem广告投放是做什么的
  • 做美团团购网站西安网站推广排名
  • 网站换模板有影响吗百度一下百度
  • wordpress的优缺点湖南靠谱seo优化报价
  • 湖南建设信誉查询网站推广一单500
  • 做汽配的外贸网站搜索排名影响因素
  • 淘宝优惠劵网站怎么做苏州网站