关于重载后置++操作符与基本类型自带的不同的问题
来源:8-6 前置与后置操作符
qq_慕设计7103773
2020-04-02
int i{ 1 };
i = i++;
返回2。
如果是自定义的后置++,则返回老值。
T t{ 1.0,1.0 }
t = t++;
返回1.0,1.0。
这是怎么回事?请老师讲解。
写回答
1回答
-
原则上课程之外的问题不做解答。这里的知识和课程中的内容有一定关系,可以用我们所学的知识解答清楚。你可以多看几次视频内容;首先
int i{ 1 };
i = i++;的返回值你的理解应该有误,这里返回值是赋值表达式的返回值,不是2,是1;
你cout << (i=i++) << endl; 试试
T t{ 1.0,1.0 }
t = t++; 的问题利用我们课上的重载函数和赋值表达式的返回值的知识,我相信你可以自己解答了。022020-04-03
相似问题