首页 > 试题广场 >

假定一个类的构造函数为A(int aa,int bb) {a

[单选题]

假定一个类的构造函数为A(int aa, int bb) {a = aa--; b = a*bb;},则执行A x(4,5);语句后,x.ax.b的值分别为()

  • 3和15
  • 20和5
  • 5和4
  • 4和20
aa = 4, bb = 5,
a = aa--之后
a的值为4,aa的值为3
b = a * bb = 4 *  5 = 20

发表于 2022-01-02 13:29:17 回复(2)
aa-- 先做运算,再赋值,a = 4, b = 4*5    = 20 。所以x.a = 4  , x.b = 20
发表于 2019-03-20 14:18:56 回复(3)
aa--返回的是改变之前的值 a=aa--相当于 a=AA aa=aa-1
发表于 2020-11-03 22:26:14 回复(0)
第一步:a=aa 即:a=4 第二步:aa-- 即:4-- 第三步:b=a*BB 即:b=4*5 所以:x.a==4 x.b==20
发表于 2021-04-15 01:22:00 回复(0)
明明就是赋值运算符优先级最低
发表于 2020-10-28 12:21:25 回复(1)
aa = 4, bb = 5, a = aa--之后 由于是后- -,先赋值给a然后-1,先把aa的值4给a,然后aa-1,以分号结尾。 所以a的值为4,aa的值为3 b = a * bb = 4 * 5 = 20
编辑于 2024-01-29 01:12:35 回复(0)
我刷的是C语言不是C++,C语言哪来的构造函数

编辑于 2024-03-28 11:14:10 回复(0)
X是什么意思啊
发表于 2023-10-08 11:49:43 回复(0)
那后面在用x.a x.b的时候其实a的已经是3了是吧
发表于 2022-03-22 21:20:11 回复(0)
我把X当成是乘号了。。。
发表于 2021-08-29 12:16:44 回复(0)