C++面向对象程序设计 037:函数对象的过滤器 ---- (北大Mooc)
发布日期:2021-06-30 22:27:55
浏览次数:2
分类:技术文章
本文共 1283 字,大约阅读时间需要 4 分钟。
文章目录
专题博客链接
原题题目
#include#include using namespace std;struct A { int v; A() { } A(int n):v(n) { }; bool operator<(const A & a) const { return v < a.v; }};// 在此处补充你的代码template void Print(T s,T e){ for(;s!=e; ++s) cout << *s << ","; cout << endl;}template T2 Filter( T1 s,T1 e, T2 s2, T3 op) { for(;s != e; ++s) { if( op(*s)) { * s2 = * s; ++s2; } } return s2;}ostream & operator <<(ostream & o,A & a){ o << a.v; return o;}vector ia;vector aa; int main(){ int m,n; while(cin >> m >> n) { ia.clear(); aa.clear(); int k,tmp; cin >> k; for(int i = 0;i < k; ++i) { cin >> tmp; ia.push_back(tmp); aa.push_back(tmp); } vector ib(k); vector ab(k); vector ::iterator p = Filter(ia.begin(),ia.end(),ib.begin(),FilterClass (m,n)); Print(ib.begin(),p); vector ::iterator pp = Filter(aa.begin(),aa.end(),ab.begin(),FilterClass (m,n)); Print(ab.begin(),pp); } return 0;}
代码实现
templateclass FilterClass{ private: int m; int n;public: FilterClass(int m1,int n1):m(m1),n(n1){ } bool operator()(T& ret) { if( !(ret
转载地址:https://love6.blog.csdn.net/article/details/115031591 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
感谢大佬
[***.8.128.20]2024年04月24日 22时38分44秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
决策树 Decision tree
2019-04-30
nominal和ordinal & 数据处理中四种基本数据类型
2019-04-30
Grid SearchCV(网格搜索)& Python实现
2019-04-30
Trie树(字典树)
2019-04-30
COMP7404 Machine Learing——ROC
2019-04-30
MATLAB与CUDA
2019-04-30
Linux png转jpg (convert命令)
2019-04-30
Ubuntu更新后终端中字体的颜色全是白色
2019-04-30
vscode git
2019-04-30
基于MATLAB的二进制数字调制与解调信号的仿真——2PSK
2019-04-30
基于MATLAB的模拟调制信号与解调的仿真——DSB
2019-04-30
HDU - 1166 敌兵布阵 (树状数组模板题/线段树模板题)
2019-04-30
CodeForces - 761C Dasha and Password (思维 暴力)
2019-04-30
CodeForces - 456C Boredom (dp)
2019-04-30
CodeForces - 675A Infinite Sequence(简单数论 细节)
2019-04-30
CodeForces - 1042B Vitamins (思维)
2019-04-30
ACM 2013 长沙区域赛 Collision (几何)
2019-04-30