模板函数重载把各种数据类型转string

使用模板函数重载把各种数据类型转成string格式的key:value,key:vector(value)等

注意模板函数的声明和定义都放在头文件中。

#include
#include
#include
#include
#include

template
std::string fun(const T1& s,const T2& val){
    std::stringstream ss;
    ss<>str;
    return s+":"+str;
}

template
std::string fun(const T1& s,const std::vector& val){
    std::stringstream ss;
    ss<<"[";
    int i=0;
    for(T2 v:val)
    {
       ss<>str;
    return s+":"+str;
}

std::string fun(const std::string &key, const char *v)
{
    return fun(key,static_cast(v));
}

template
std::string fun(const std::map& m){
    std::string ret;
    for(auto it=m.begin();it!=m.end();it++){
       ret=ret+fun(it->first,it->second)+"\n";
    }
    return ret;
}

int main()
{
   std::string key="Key";
   std::string res=fun(key,"vvvvv");
   std::cout<

 

你可能感兴趣的:(C++peimer,C++)