Chinaunix首页 | 论坛 | 博客
  • 博客访问: 15272531
  • 博文数量: 7460
  • 博客积分: 10434
  • 博客等级: 上将
  • 技术积分: 78178
  • 用 户 组: 普通用户
  • 注册时间: 2008-03-02 22:54
文章分类

全部博文(7460)

文章存档

2011年(1)

2009年(669)

2008年(6790)

分类: C/C++

2008-05-27 20:10:18

原创作者: 晁智平                      如转贴请保留此行

const是用于保护程序的健壮性,减少程序隐患。
const的用法比较复杂,总结起来又分为以下两种:
1:在定义变量时使用:  

   a: const int a=100; 最简单的用法,说明变量a是一个常变量;
   b: int const b=100; 与a功能相同;
   c: const int *a=&b; 指向常数的指针,即指针本身的值是可以
      改变的,但指向的内容是不能改变的;
   d: int const *a=&b; 与c功能相同;
   e: int * const a = &b; 常指针,即指针本身的值是不可改变的,
      但指向的内容是可改变的;
   f: const int * const a = &b;指向常数的常指针,即指针本身与
      指向的内容都是不可改变的;
   g: const int &a=100; 常数引用,即不能改变引用的值;
  
   总结: 在使用const定义变量时,一定要进行初始化操作,在操作
   符(*,&)左边的修饰的是指向的内容,在右边的是本身。
  
2:在函数用使用:

   a: void func(const int a); 做为参数使用,说明函数体内是不
      能修改该参数的;对不参数定义时不同的形式,可参见定义变量
      时使用方式;
   b: const int func(); 做为返回值使用,说明函数的返回值是不
      能被修改的,在取得返回值时应用const int a = func();对不
      参数定义时不同的形式,可参见定义变量时使用方式;
   c: int func() const; 常函数,说明函数是不能修改类中成员的
      值的,只能用于类的成员函数中;
     
   总结:在函数中使用const,情况与定义变量的情况大致相同。  

以上是工作中的一点心得,如有不正确的地方请指正!谢谢!

阅读(178) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~