C++ //内建函数对象 算数仿函数 关系仿函数 //逻辑仿函数
2021/8/17 11:06:25
本文主要是介绍C++ //内建函数对象 算数仿函数 关系仿函数 //逻辑仿函数,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1 //内建函数对象 算数仿函数 关系仿函数 //逻辑仿函数 2 #include<iostream> 3 #include<string> 4 #include<functional> //内建函数对象头文件 5 #include<vector> 6 #include<algorithm> 7 8 //using namespace std; 9 using namespace std; 10 11 //negate 一元仿函数 取反仿函数 12 void test01() 13 { 14 negate<int>n; 15 16 cout<<n(50)<<endl; 17 } 18 19 20 21 22 //plus 二元仿函数 加法 23 void test02() 24 { 25 plus<int>p; 26 27 cout << p(10,20) << endl; 28 } 29 30 //关系仿函数 31 class MyCompare 32 { 33 public: 34 bool operator()(int v1,int v2)//const 35 { 36 return v1 > v2; 37 } 38 }; 39 40 41 //大于 greater 42 void test03() 43 { 44 vector<int>v; 45 v.push_back(10); 46 v.push_back(60); 47 v.push_back(80); 48 v.push_back(30); 49 v.push_back(20); 50 51 for (vector<int>::iterator it = v.begin(); it != v.end(); it++) 52 { 53 cout << *it << " "; 54 } 55 cout << endl; 56 57 //升序 58 59 sort(v.begin(), v.end()); 60 cout << "升序" << endl; 61 for (vector<int>::iterator it = v.begin(); it != v.end(); it++) 62 { 63 cout << *it << " "; 64 } 65 cout << endl; 66 67 //降序 68 // greater<int>() 内建函数 69 //sort(v.begin(), v.end(), MyCompare()); 70 sort(v.begin(), v.end(), greater<int>()); 71 cout << "降序" << endl; 72 for (vector<int>::iterator it = v.begin(); it != v.end(); it++) 73 { 74 cout << *it << " "; 75 } 76 cout << endl; 77 78 79 80 81 } 82 83 //逻辑仿函数 84 //逻辑非 longical_not 85 void test04() 86 { 87 vector<bool>v; 88 v.push_back(true); 89 v.push_back(false); 90 v.push_back(true); 91 v.push_back(false); 92 93 cout << "v容器 =" << endl; 94 for (vector<bool>::iterator it = v.begin(); it != v.end(); it++) 95 { 96 cout << *it << " "; 97 } 98 cout << endl; 99 100 //利用逻辑非 将容器v 搬运到 容器 V2中,并执行取反操作 101 102 vector<bool>v2; 103 v2.resize(v.size()); 104 105 transform(v.begin(),v.end(),v2.begin(),logical_not<bool>()); 106 107 cout << "v2容器 =" << endl; 108 for (vector<bool>::iterator it = v2.begin(); it != v2.end(); it++) 109 { 110 111 cout<<* it << " "; 112 } 113 cout << endl; 114 115 116 117 } 118 119 120 121 int main() 122 { 123 124 test01(); 125 test02(); 126 test03(); 127 test04(); 128 129 130 system("pause"); 131 return 0; 132 }
这篇关于C++ //内建函数对象 算数仿函数 关系仿函数 //逻辑仿函数的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-06-19EntBot.ai: AI Website Chatbot for Product Guides and Development Doc
- 2024-06-17zero-shot-learning-definition-examples-comparison
- 2024-06-06Package Easy(基于 NSIS 的打包exe安装包工具)使用方法-icode9专业技术文章分享
- 2024-06-06基于 casdoor 的 ELK 开源登录认证解决方案: elk-auth-casdoor-icode9专业技术文章分享
- 2024-05-29Elasticsearch慢查询日志配置
- 2024-05-29揭秘华为如此多成功项目的产品关键——Charter模板
- 2024-05-29海外IDC业务拓展的7大挑战
- 2024-05-29InLine Chat功能优化对标Github Copilot,CodeGeeX带来更高效、更直观的编程体验!
- 2024-05-29CodeGeeX 智能编程助手 6 项功能升级,在Visual Studio插件市场霸榜2周!
- 2024-05-29AutoMQ 生态集成 Apache Doris