首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

C语言之const用法整理(1)

C语言之const用法整理(1)

(1)修饰一般常量
一般常量是指简单类型的常量。这种常量在定义时,修饰符const可以用在类型说明符前,也可以用在类型说明符后。
       例如:   
           int const x=2;  或  const int x=2;         //等效的
   (2)修饰常数组
       定义或说明一个常数组可采用如下格式:
       int const a[5]={1, 2, 3, 4, 5}; 
         const int a[5]={1, 2, 3, 4, 5};          //等效的
   (3)修饰常对象
      常对象是指对象常量,定义格式如下:
  class A;
       const A a;
         A const a;            //等效的
      定义常对象时,同样要进行初始化,并且该对象不能再被更新,修饰符const可以放在类名后面,也可以放在类名前面。 
   (4)修饰常指针
        const int *A;        //const修饰指向的对象,A可变,A指向的对象不可变
        int const *A;       //const修饰指向的对象,A可变,A指向的对象不可变
        int *const A;       //const修饰指针A,     A不可变,A指向的对象可变
        const int *const A;  //指针A和A指向的对象都不可变
   (5)修饰常引用
        使用const修饰符也可以说明引用,被说明的引用为常引用,该引用所引用的对象不能被更新。其定义格式如下:
       const double & v;
  (6)修饰函数的常参数
        const修饰符也可以修饰函数的传递参数,格式如下:
        void Fun(const int Var);
        告诉编译器Var在函数体中的无法改变,从而防止了使用者的一些无意的或错误的修改。     
   (7)修饰函数的返回值:
        const修饰符也可以修饰函数的返回值,是返回值不可被改变,格式如下:
            const int Fun1();
            const MyClass Fun2();
            调用需注意只能用常量调用:const int N=Fun1();
   (8)修饰类的成员函数:
        const修饰符也可以修饰类的成员函数,格式如下:
            class ClassName
     {
             public:
                  int Fun() const;
                    .....
             };
        这样,在调用函数Fun时就不能修改类里面的成员变量。。
    (9)在另一连接文件中引用const常量
         extern const int i;     file://正确的引用
         extern const int j=10;  file://错误!常量不可以被再次赋值
    另外,还要注意,常量必须初始化!
         例如:
             const int i=5;
(4)还有其中区别方法,沿着*号划一条线:
如果const位于*的左侧,则const就是用来修饰指针所指向的变量,即指针指向为常量;
如果const位于*的右侧,const就是修饰指针本身,即指针本身是常量。

参考:
关于C++ const 的全面总结

    C++中的const关键字的用法非常灵活,而使用const将大大改善程序的健壮性,本人根据各方面查到的资料进行总结如下,期望对朋友们有所帮助。
Const 是C++中常用的类型修饰符,常类型是指使用类型修饰符const说明的类型,常类型的变量或对象的值是不能被更新的。
继承事业,薪火相传
返回列表