c++ stl bind

来源:互联网 发布:智业软件 编辑:程序博客网 时间:2024/06/10 09:38


#include <iostream>#include <algorithm>#include <vector>#include <string>#include <numeric>#include <functional>using namespace std;using namespace std::tr1::placeholders;string Encoder(char c){switch (c){case '<': return "<";case '>': return ">";case '&': return "&";case '\'': return "'";case '"': return """;default: return string(1, c);}}int main(){string s("<1>");string s0("&.&");char c = 'c';cout<< multiplies<int>()(3,4)<<endl;//cout << plus<string>(s,c) <<endl;string s2 = std::accumulate(s.begin(), s.end(), string(), bind(plus<string>(),_1,bind(Encoder,_2)));cout<<s2<<endl;return 0;}


0 0