说一下有关c++运算符的重载
来源:互联网 发布:三十岁的女人 知乎 编辑:程序博客网 时间:2024/04/29 02:17
//1。
//定义在类operation中,运算符需要定义为friend型才可以访问保护区中的变量
//以下的例子是一个重载适合复数的计算
class complex
{
public:
complex( int real, int image );
virtual ~complex();
friend complex operator + ( complex& c1, complex& c2 );
//使用friend声明为友元,采用第一种定义方法
//使用complex& operator + ( complex&b c1 );,采用第二种定义方法
complex& operator = ( complex& c );
//有关赋值运算符的重载实现,见2。
protected:
int m_real;
int m_image;
char *pName;
};
//第一种定义方法,声明为友元的可以访问保护区中的数据,注意友元函数不属于类,是
//类的好朋友 ^_^ 另外在这里使用c++的重载加减乘除运算时使用双参数,比单参数要好些
//双参数可以不用改变当前对象中的数据,即(this),这样可以达到多次计算的目的
complex operator + ( complex& c1, complex& c2 )
{
}
//第二中定义方法,需要访问保护区中的数据,需要定义为类中的函数
complex& complex::operator + ( complex& c1 )
{
m_real += c1.m_real;
m_image += c1.m_image;
return * this;
}
//2。
//当重载赋值运算符"="的时候,需要注意,堆中的数据需要及时的释放
complex& complex::operator = ( complex& c )
{
delete pName;//当变量是来自堆区的,应该释放后再赋值
strcpy( pName, c.pName );
return * this;
}
- 说一下有关c++运算符的重载
- 有关运算符重载
- c++-运算符的重载
- C++--运算符的重载
- [C/C++]运算符的重载
- 区分一下强制类型转换运算符重载/赋值运算符重载/对象定义的赋值
- C++-运算符重载
- [C++]重载运算符
- C#:运算符重载
- c++-++运算符重载
- C++:重载运算符
- 运算符重载(C++)
- [c++]运算符重载
- 【C++】运算符重载
- C++--------------------------------------------运算符重载
- C#:运算符重载
- C++:运算符重载
- C++:运算符重载
- 35岁之前成功12条法则[转载]
- 开源列表
- 06/03/24
- Jiplet开发指南
- PIC单片机的抗干扰能力强还是AVR单片机的强?
- 说一下有关c++运算符的重载
- 女人用电脑术语给男人们的分类
- 成为单片机高手的密决
- RS-232RS-485无源转换电路设计
- java.lang
- 89系列单片机的型号编码
- [转载] XP中打开2000模式的“用户账户”面板
- 单片机MCS-51系列指令快速记忆法
- 硬件项目设计心得