2.15
(a)int ival=1.01;
(b)int &rval1=1.01;
(c)int &rval2=ival;
(d)int &rval3;
a、c合法 b、d不合法
b中 引用的类型必须和原类型一致 引用是int 而1.01是浮点数
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)让d等于3.14159
(b)不合法 r2是double r1是int 类型不对应
(c)不合法 r2是double r1是int 类型不对应
(d)不合法 r2是double r1是int 类型不对应
2.17
int i, &ri = i;
i = 5; ri = 10;
std::cout << i << ” ” << ri << std::endl;
输出10 10