C++
小于 1 分钟
C++
目录
仿函数
大小比较仿函数
“ 所有 algorithms,其内最终涉及元素本身的操作,无非就是比大小 ”
仿函数的用法
bool strLonger(const string& s1, const string& s2){ return s1.size()< s2.size(); } cout << "max of zoo and hello : " << max(string("zoo"), string("hello")) <<endl; // zoo cout << "max of zoo and hello : " << max(string("zoo"), string("hello"), strLonger) <<endl; // hello
算法 Algorithms(比大小)
template <class T> inline const T& min(const T& a, const T& b){ return b<a?b:a; } template <class T> inline const T& max(const T& a, const T& b){ return a<b?b:a; } template <class T, class Compare> inline const T& min(const T& a, const T& b, Compare comp){ // Compare是比较大小的仿函数 return comp(b,a)?b:a; } template <class T, class Compare> inline const T& max(const T& a, const T& b, Compare comp){ // Compare是比较大小的仿函数 return comp(a,b)?b:a; }