2.15: 下面的哪个定义是不合法的? 为什么?
- (a)int ival=1.01; (b)int &rvall=1.01;
- (c)int &rval2=ival; (d)int &rval3;
a) 合法. 但是会出现警告;
b) 不合法. 初始化引用的值必须是对象, 而不能是字面值;
c) 合法.
d) 不合法. 引用必须初始化.
2.16: 考查下面的所有赋值然后回答: 哪些赋值时不合法的? 为什么? 哪些赋值是合法的? 它们执行了什么样的操作?
- int i=0,&r1=i; double d=0,&r2=d;
- a)r2=3.14159; b)r2=r1;
- c)i=r2; d)r1=d;
a) 合法. 它将 3.14159 赋值给引用 r2, 实际上是对变量 d 进行赋值;
来源: http://www.bubuko.com/infodetail-2693206.html