c++中 模板与重载入门代码
程序员文章站
2024-03-17 21:56:52
...
#include<iostream>
using namespace std;
template <typename T> //定义模板的固定格式
struct Point{
T x,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){ //重载operator+
return Point<T>(A.x+B.x,A.y+B.y) ;
}
template <typename T> //定义模板的固定格式
ostream& operator << (ostream &out,const Point<T>& p){ //ostream是output stream的简称,即输出流;<<操作重载
out <<"("<<p.x<<","<<p.y<<")";
return out;
}
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<<"\n";
return 0;
}
推荐阅读
-
c++中 模板与重载入门代码
-
c++ primer(第五版)学习笔记及习题答案代码版(第十四章)重载运算与类型转换
-
4.C++中的函数重载,C++调用C代码,new/delete关键字,namespace(命名空间)
-
C++中,什么是成员模板?成员模板代码实例
-
C++模板入门教程(一)——模板概念与基本语法
-
关于c++中与的容器(运算符的重载)实例讲解
-
C++的多态与模板函数代码实例
-
java中重载与重写的区别(含示例代码)
-
c++ primer(第五版)学习笔记及习题答案代码版(第十四章)重载运算与类型转换
-
4.C++中的函数重载,C++调用C代码,new/delete关键字,namespace(命名空间)