第一周 从C走进C++ 005 const

1.  定义常量

const int MAX_VAL = 23;
const string NAME = "Micael Jordan";

 

2. 定义常量指针

  • 不可通过常量指针修改其指向的内容
int n,m;
const int * p = & n;
* p = 5; //编译出错
n = 4; //ok
p = &m; //ok, 常量指针的指向可以变化
  • 不能把常量指针赋值给非常量指针,反过来可以
const int * p1; int * p2;
p1 = p2; //ok
p2 = p1; //error
p2 = (int * ) p1; //ok,强制类型转换
  • 函数参数为常量指针时,可避免函数内部不小心改变参数指针所指地方的内容
void MyPrintf( const char * p )
{
    strcpy( p,"this"); //编译出错
    printf("%s",p); //ok
}

 

3.  定义常引用

  • 不能通过常引用修改其引用的变量
int n;
const int & r = n;
r = 5; //error
n = 4; //ok

 

posted on 2014-07-15 16:16  青丝不染  阅读(115)  评论(0编辑  收藏  举报

导航