跪求用c++定义一个函数Add,实现任意两个同类型的数相加........................
5条回答 默认 最新
- qtchen_1988 2019-05-29 11:13关注
#include <iostream> using namespace std; template<typename T> T add(T& t1,T &t2) { T rv = t1 + t2; return rv; } class TestAdd { public: TestAdd(int age):m_age(age){} TestAdd operator +(TestAdd& scrObj){ TestAdd ret(this->m_age + scrObj.m_age); return ret; } int m_age; }; int main() { int a = 9,b = 2; std::cout << add(a,b) << endl; double da = 3.5,db = 5.9; std::cout << add(da,db) << endl; TestAdd ta(23),tb(53); TestAdd ret = add(ta,tb); std::cout << ret.m_age << std::endl; string sa("Hello"),sb(" World!"); std::cout << add(sa,sb) << endl; char ca(20),cb(45); std::cout << add(ca,cb) << endl;//65(A) return 0; }
任意类型,包括自定义类型,只不过要自己重载+操作符
说明:虽然没有采纳,但我更新了回答,方便以后有人搜索到这个问题,希望对他有帮助
解决 4无用
悬赏问题
- ¥15 素材场景中光线烘焙后灯光失效
- ¥15 请教一下各位,为什么我这个没有实现模拟点击
- ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
- ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
- ¥20 有关区间dp的问题求解
- ¥15 多电路系统共用电源的串扰问题
- ¥15 slam rangenet++配置
- ¥15 有没有研究水声通信方面的帮我改俩matlab代码
- ¥15 ubuntu子系统密码忘记
- ¥15 保护模式-系统加载-段寄存器