const char *p、char const *p、char *const p

  1. const char *p:p不是常量,可以修改p的值,但不能修改p指向空间的值
  2. char const *p与char *const p:p是常量,不能修改p的值,但能修改p指向空间的值
  3. const char *const p:两者均为常量,不可修改

注意:在函数返回值前加const的目的是为了使其返回值不为左值。比如假设a*b=c是合法的,但无意义,我们需要杜绝这种情况,于是我们可以将*操作符重载为返回值加const的函数。

posted @ 2016-08-29 23:50  绿水白川  阅读(155)  评论(0编辑  收藏  举报