Chinaunix

标题: 关于运算符重载的问题 [打印本页]

作者: da vinci    时间: 2004-12-03 22:36
标题: 关于运算符重载的问题
#include
class au
{float x;
public:
au()
{x=0;}
au(float i)
{x=i;}
void operator--()
{--x;}
void operator--(int)
{x-=2;}
void show()
{cout<<"x="< void main()
{au p(6);
p.show();
--p;
p.show();
p--;
p.show();}

请问其中的--p和p--相当于什么语句?谢谢


作者: THEBEST    时间: 2004-12-03 22:41
标题: 关于运算符重载的问题
void operator--()

and

void operator--(int)

你不是写出程序了么?
你不是有一个编译器么?
你不是有手么?
你不是可以编译么?
你不是可以看结果么?
你不是可以从结果看出是哪一个么?
你不是可以用code标签么?
郁闷...
作者: da vinci    时间: 2004-12-03 22:49
标题: 关于运算符重载的问题
这是书上的例题,结果为x=6x=5x=3,但我得出的结果是x=6 x=5 x=4
作者: THEBEST    时间: 2004-12-03 22:51
标题: 关于运算符重载的问题
你就随便在operator--里cout一下也知道啊...
还用得着看结果么?这个书上不可能没提过的.
你可以试两个以上编译器.

可惜我不是版主,不然这帖绝对该砍.
作者: da vinci    时间: 2004-12-03 23:02
标题: 关于运算符重载的问题
谢了




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2