2.15
a、c 合法,b、d 不合法。
2.16
#include<iostream>
int main()
{
int i = 0, &r1 = i;
double d = 0, &r2 = d;
r2 = 3.14159;
std::cout << d << std::endl; // 3.14
r2 = r1;
std::cout << d << std::endl; // 0
i = r2;
std::cout << i << std::endl; // 0
r1 = d;
std::cout << r1 << std::endl; // 0
return 0;
}
// 这些赋值不都是合法的吗??!
2.17
// 10 10
#include<iostream>
int main()
{
int i, &ri = i;
i = 5; ri = 10;
std::cout << i << " " << ri << std::endl;
}