首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

有关运算符重载有关问题

2012-05-04 
有关运算符重载问题如果表达式a+b中的+是作为成员函数重载的运算符,若采用运算符函数调用格式,则可表示

有关运算符重载问题
如果表达式a+b中的"+"是作为成员函数重载的运算符,若采用运算符函数调用格式,则可表示为()
A a.operator+(b) B b.operator+(a)
C operator+(a,b) D operator(a+b)

如果表达式a==b中的"=="是作为普通函数重载的运算符,若采用运算符函数调用格式,则可表示为()
A a.operator==(b) B b.operator==(a)
C operator==(a,b) D operator==(b,a)

如果表达式a++中的"++"是作为成员函数重载的运算符,若采用运算符函数调用格式,则可表示为()
A a.operator++(b) B operator++(a)
C operator++(a,1) D a.operator++(1,a)

如果表达式++a中的"++"是作为成员函数重载的运算符,若采用运算符函数调用格式,则可表示为()
A a.operator++(1) B operator++(a)
C operator++(a,1) D a.operator++()
答案是ACCA吗?具体的区别在哪,关键在哪,求高人解答

[解决办法]
作为成员函数,调用,肯定形式是: 对象.函数(参数)
作为普通函数,调用,肯定形式是:函数(参数)
XX++和++XX;前缀和后缀重载,在于后缀形式多了一个参数,该参数的目的主要是为了区分前缀形式,别无其它。
[解决办法]
a.operator+(b)
operator==(a,b)
a.operator++(int)
a.operator++()

热点排行