2.26:下面哪些句子是合法的?如果有不合法的句子,请说明为什么?
(a)const int buf; (b)int cnt=0;
(c)const int sz=cnt; (d)++cnt;++sz;
a)不合法。const 对象必须初始化。一旦创建就不可修改。
b)合法。定义了一个int类型的变量cnt,其值初始化为0;
c)合法。定义了一个const类型的int类型变量sz,并用cnt的值拷贝初始化sz。
d)不合法。++cnt操作合法,但是++sz不合法,因为sz是const对象,其值一旦创建就不可更改。