您的位置:首页 > 其它

结构体模版

2016-05-20 19:25 267 查看
看到这个内容,瞬间发现map,vector,set这些容器不就是个模版吗

#include<iostream>
#include<cstdio>
using namespace std;
template<typename T>
struct Point{
T x;
T y;
Point(T x=0,T y=0): x(x),y(y) {}
};
template<typename T>
Point<T> operator + (const Point<T> &A,const Point<T> &B)
{
return Point<T>(A.x+B.x,A.y+B.y);
}
template<typename T>
ostream& operator << (ostream &out,const Point<T> &A)
{
out<<"("<<A.x<<","<<A.y<<")";
return out;
}
template<typename T>
T sum(T *begin,T *end)
{
T *p=begin;;
T ans=0;
for(T *p=begin;p!=end;p++)
ans=ans+*p;
return ans;
}
int main()
{
Point<int> a(1,2),b(3,4);
Point<double> c(1.1,2.2),d(3.3,4.4);
cout<<a+b<<" "<<c+d<<endl;
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: