这个问题已经在这里有了答案:
已关闭10年。
之间有什么区别
A const * pa2 = pa1;
和
A * const pa2 = pa1;
(例如,我有一些A类)。
最佳答案
从右到左读取类型:
A const * pa2 = pa1;
pa2
是指向只读A的指针(该对象可能无法通过指针更改)A * const pa2 = pa1;
pa2
是指向A的只读指针(该指针不可更改)这并不意味着A无法更改(或实际上是恒定的)const具有误导性,始终将其理解为只读。其他别名指针可能会修改A。