http://bbs.youkuaiyun.com/topics/100030353
const int a是旧的习惯写法
int const a是统一风格的写法功能是完全一样的,但int const a要好理解一些,而且风格上统一一点.
C++中,const修饰紧跟其后的内容.所以,在int const a中,const修饰的是a,也就是说a是const;
相似的,char const *a中,const就修饰的*a,也就是说*a是不可变的,但a可以.
而如果是char * const a,那就是a不可变,*a可变.一目了然.
如果用旧写法,复杂类型理解起来就有点费力.
比如const char *(*aaa)[10]
一眼上去,恐怕没几个人说得出来const是修饰什么.
用新写法就很清楚了-- char const*(*aaa)[10], const是修饰*(*aaa)