问题:
[单选] 下面程序的运行结果为( )。#include<iostream.h> class A
{
int hum;
public:
A(int i){nuln=i;}
A(A&A.{num=a.num十+;} void print(){eout(<hum;} };
void main()
A a(1),b(A.; a.print();
A print();
A . 11
B . 12
C . 21
D . 22
参考答案:C
参考解析:
本题考查考生对拷贝构造函数的掌握。因为++运算是右结合的,所以在使用a对b赋值时,b的nnm变为1,而a的nnm变为2(先赋值再自加)。