2011年计算机等级考试二级C 辅导笔记:重载双目运算符
文章作者 100test 发表时间 2011:03:18 20:31:34
来源 100Test.Com百考试题网
导读:本文主要介绍为类成员函数的重载、非类成员的运算符重载、重载关系运算符、其他赋值运算符。
在(五)我们已经介绍了重载赋值运算符,这里就不重新说明了。
一。作为类成员函数的重载
为了能进行类对象和一个整型值的加法运算,需要写一个类的成员函数来重载双目加法( )运算符。该函数在类中的声明如下:
Date operator (int) const.
函数的声明指出,返回值是一个Date类对象,函数名是运算符 ,只有一个整型参数,而且函数是常量型的。当编译器发现某个函数以加上前缀operator的真实运算符作为函数名,就会把该函数当作重载运算符函数来处理。如果在表达式中,该运算符的左边是一个类对象,右边是一个参数类型的一个对象,那么重载运算符函数就会被调用。调用形式如下:
Date dt(6,9,2005).
dt=dt 100.
也可以显式的调用重载运算符函数:
dt.operator (100).
下面代码重载了双目加法运算符来计算一个整数和一个Date类对象之和,并且返回Date类对象。
#include iostream.h
class Date
{
int mo,da,yr.
static int dys[].
public:
Date(int m=0,int d=0,int y=0)
{ mo=m. da=d. yr=y.}
void display() const
{ cout