第七周-项目5-模板类中使用友元函数
来源:互联网 发布:linux删除mysql数据库 编辑:程序博客网 时间:2024/06/03 04:10
/** 程序的版权和版本声明部分:* Copyright (c) 2013.烟台大学计算机学院* All rights reserved.* 文件名称: 模板类中使用友元函数* 作 者:冯冬影* 完成日期:2014 年 4月 11日* 版 本 号:v1.0* 对任务及求解方法的描述部分:* 输入描述:* 问题描述:* 程序输出:*/#include<iostream>using namespace std;template<class T>//声明类模板Tclass Complex{public: Complex() { real=0; imag=0; } Complex(T a,T b) { real=a; imag=b; } template <class T1> friend Complex <T1> add_complex(Complex <T1>&,Complex <T1>&);//友元函数> Complex complex_add(Complex &); void display();private: T real; T imag;};template <class T1>Complex <T1> add_complex(Complex <T1> &c1,Complex <T1> &c2){ Complex <T1> c; c.real=c2.real+c1.real; c.imag=c2.imag+c1.imag; return c;}template <class T>Complex <T> Complex<T>::complex_add(Complex <T> &c1){ Complex <T> c; c.real=real+c1.real; c.imag=imag+c1.imag; return c;}template<class T>void Complex<T>::display(){ cout<<"("<<real<<","<<imag<<"i)"<<endl;}int main( ){ Complex<int> c1(3,4),c2(5,-10),c3; c3=c1.complex_add(c2); //调用成员函数支持加法运算,有一个形参 cout<<"c1+c2="; c3.display( ); Complex<double> c4(3.1,4.4),c5(5.34,-10.21),c6; c6=c4.complex_add(c5); //调用成员函数支持加法运算,有一个形参 cout<<"c4+c5="; c6.display( ); Complex<int> c7; c7=add_complex(c1,c2); //调用友员函数支持加法运算,有两个形参 cout<<"c1+c2="; c7.display( ); Complex<double> c8; c8=add_complex(c4,c5); //调用友员函数支持加法运算,有两个形参 cout<<"c4+c5="; c8.display( ); return 0;}
运行结果
友元函数的声明中也要给出模板声明!!!
0 0
- 第七周-项目5-模板类中使用友元函数
- 第七周 项目5拓展--模板类中使用友元函数
- 第七周项目5拓展模板类中使用友元函数
- 第七周 项目五:模板类中使用友元函数
- 第七周项目五——模板类中使用友元函数
- 第七周上机任务5-模板类中使用友元函数
- 项目5-模板类中使用友元函数
- 第七周项目四,五合集----复数模版类以及拓展模版中使用友元函数
- C++第7周项目5 - 模板类中使用友元函数
- 【项目5拓展(选做)-模板类中使用友元函数】
- 类模板中使用友元函数
- 模板类中使用友元函数
- 第七周项目二:友元函数
- 第七周-项目4-友元函数
- 第七周项目1-友元函数
- 第七周项目1-点类-友元函数
- 第七周项目1-点类-友元函数
- C++中模板类使用友元模板函数
- python中的os模块
- Suricata之源代码(二)
- Box2D C++ 教程-跳跃
- asterisk使用MYSQL认证的配置方法
- 代码面试最常用的10大算法
- 第七周-项目5-模板类中使用友元函数
- GDB 找不到源代码【帮了我大忙】
- Box2D C++ 教程-使用debug Draw
- 为C语言的内存模型辩护
- WIN, Apache2.2+Django1.6(Python2.7.5)+mod_wsgi 实现网站部署
- HODJ 1001 Sum Problem C++解法
- TI低功耗蓝牙(BLE)介绍
- Box2D C++ 教程-画自己的图像
- 程序崩溃时抓取dump文件