问题 单项选择题

函数定义如下:
void fun(int x,int& y)x++;y++;
如果执行代码段:
int a=0,b=1;
fun(a,b);
则变量a和b的值分别是( )。

A.0和1

B.0和2

C.1和1

D.1和2

答案

参考答案:B

解析: 本题中定义了一个fun函数,当调用fun(a,b);函数时,形参x和y被初始化为实参a和b的引用,参数x为非引用类型,参数y为引用类型,在执行该函数时,对形参x的改变不会影响到实参,形参y的改变将会影响到实参,因此调用fun函数后,形参变量x=1,y=2,实参变量a=0,b=2。

单项选择题
判断题