模板类的友元重载
2015-07-29 19:42
411 查看
#include<iostream>
using namespace std;
template<class T>
class Test;
template<class T>
ostream& operator<<(ostream& out, const Test<T> &obj);
template <class T>
class Test
{
private:
int num;
public:
Test(int n = 0)
{
num = n;
}
Test(const Test<T>& copy)
{
num = copy.num;
}
friend ostream& operator<< <>
(ostream& out, const Test<T> &obj);
//注意在“<<”后加上"<>"表明这是个函数模板
};
template<class T> ostream& operator<<(ostream& out, const Test<T> &obj)
{
out << obj.num;
return out;
}
int main()
{
Test<int> t(2);
cout << t;
return 0;
}
using namespace std;
template<class T>
class Test;
template<class T>
ostream& operator<<(ostream& out, const Test<T> &obj);
template <class T>
class Test
{
private:
int num;
public:
Test(int n = 0)
{
num = n;
}
Test(const Test<T>& copy)
{
num = copy.num;
}
friend ostream& operator<< <>
(ostream& out, const Test<T> &obj);
//注意在“<<”后加上"<>"表明这是个函数模板
};
template<class T> ostream& operator<<(ostream& out, const Test<T> &obj)
{
out << obj.num;
return out;
}
int main()
{
Test<int> t(2);
cout << t;
return 0;
}
相关文章推荐
- ArcGIS 10.1系列软件 下载
- java培训 2015-07-29
- 选项卡二
- 操作系统专题——进程与线程的区别
- AOP学习之Log4net
- EJB invocations from a remote client using JNDI
- 【峰回路转】Excel技巧百例 09.删除空白行
- HDOJ 1250 Hat's Fibonacci(大数,错了11次!!)
- sed用法小结
- 第3章 MFC原理介绍
- Geant4.10.01.p02例子学习-(basic)
- 第五篇 学习OpenCV之视频处理
- 远程登入开发板的几种方法(ssh,putty.exe,telnet,超级终端)
- 第五篇 学习OpenCV之视频处理
- hdu1863 最小生成树基础
- JS面向对象编程
- A Pattern is a solution to a problem in a context
- hdu5322 Hope(dp)
- 帝都It男的幸福一天
- dlopen failed: "*.so" has unexpected e_machine