注册 登录
编程论坛 C++教室

定义一个函数模板,实现int,double,char,string类型的加法

鱼游海底 发布于 2015-10-13 23:47, 573 次点击
其中char ,string 类型的加法是把后者接到前者的后面。
5 回复
#2
rjsp2015-10-14 08:08
就是 std::plus 呗,但 char 相加后的类型是什么?
#3
仰望星空的2015-10-14 14:13
转换成ASCII码之后进行加运算,再换算回来?
按楼主的意思,是不是就是并列输出显示啊,类似于stract?
#4
鱼游海底2015-10-14 14:43
回复 3楼 仰望星空的
对输出格式没有要求吧,只要满足模板要求就行了
#5
鱼游海底2015-10-14 14:43
回复 2楼 rjsp
String
#6
rjsp2015-10-14 15:26
回复 5楼 鱼游海底
template<typename T1, typename T2>
auto myplus( const T1& a, const T2& b ) -> decltype(a+b)
{
    return a+b;
}

std::string myplus( const char* a, const char* b )
{
    return std::string(a)+b;
}

std::wstring myplus( const wchar_t* a, const wchar_t* b )
{
    return std::wstring(a)+b;
}

char/wchar_t 的你自己加吧,大体就这样
1