C++ const && define

C++ const && define,const

本文记录了C++中的const关键字的内容,分为3个部分,const和define的区别,const的作用,const的使用。


const和define的区别

const的作用

实例代码:

const的使用

图片 1


http://www.bkjia.com/cjjc/1017656.htmlwww.bkjia.comtruehttp://www.bkjia.com/cjjc/1017656.htmlTechArticleC++ const define,const
本文记录了C++中的const关键字的内容,分为3个部分,const和define的区别,const的作用,const的使用。
const和define的区别 c…

本文记录了C++中的const关键字的内容,分为3个部分,const和define的区别,const的作用,const的使用。


const和define的区别

图片 2


const的作用

  1. const用于定义常量:编译器可以进行静态数据类型的安全检查。
  2. const修饰函数形式参数:当参数为自定义类型或抽象数据类型时,应该将“值传递”改为“const
    &传递”,可以提高效率,如下:

    void fun(A
    a);效率低,函数体内产生A类型的临时对象用于复制参数a,临时对象的构造、复制、析构过程将消耗时间。

    void fun(A const
    &a);效率极高。引用,不会产生临时对象,节省了时间,但是光引用有可能改变a的值,所以加const

  3. const修饰函数的返回值:如,给“指针传递”的函数返回值加const,则返回值不能被直接修改,且这个返回值只能被赋值给加
    const修饰的同类型指针。如下:

    const char *GetChar(){}

    char *ch = GetChar();//error

    const char *ch = GetChar();//correct

  4. const修饰类的成员函数(函数定义体):任何不会修改数据成员的函数都应该用const修饰,这样,当不小心修改了数据成员或调用了非const成员函数时,编译器会报错。
    int GetChar(void) const;