跪求用c++定义一个函数Add,实现任意两个同类型的数相加........................
#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;
}
任意类型,包括自定义类型,只不过要自己重载+操作符
说明:虽然没有采纳,但我更新了回答,方便以后有人搜索到这个问题,希望对他有帮助
#define Add(p,q) ((p)+(q))
int add(int a,int b) {
int c=0;
c=a+b;
return c;
}
#include
#include
#include
#include
#include<bits/stdc++.h>
#include
using namespace std;
int Add(int a,int b){
int c=a+b;
return c;
}
int main(){
return 0;
}
void add(int n1[],int n2[],int n3[]){
int d[N] = {0};
int len = max(n1[0],n2[0]);
for (int i = 1; i <= len ; ++i) {
d[i] += n1[i] + n2[i];
d[i + 1] = d[i] / 10;
d[i] = d[i] % 10;
}
int l = len + 1;
while(d[l] == 0 && l > 1){
l --;
}
d[0] = l;
memcpy(n3,d, N * sizeof(int));
}
多大的数都可以相加