美文网首页
关键字 const

关键字 const

作者: 曹小恒 | 来源:发表于2018-04-03 02:08 被阅读0次

const的用法非常灵活,能够大大增强程序的健壮性.

  1. 定义常量
const int c = 0;
  1. 保护变量不被更改
void f(const int i) { i=10;//error! }
      //如果在函数体内修改了i,编译器就会报错

上述代码传递的是副本,更改影响并不大,const往往和引用一起使用,节省空间并增强健壮性

void f(const int &i){...}

i 的值为引用,并且不允许被更改.
也可以对返回值为引用的变量加上这个修饰,这样这个引用就不能被更改

  const string& get_name() const 
  { 
    return name; 
  } 
  1. 全局调整参数,类似宏定义
  2. 类型安全检查
void f(const int i) { .........}
      //对传入的参数进行类型检查,不匹配进行提示

宏定义仅仅对宏进行替换,没有类型检查,往往会导致意想不到的错误.

  1. 修饰成员函数
    const修饰的成员函数,不能改变这个类对象的值(指针访问可以,但是并不推荐)
  • const对象只能访问const成员函数,一般对象则都可以(包括const和其他共有函数)
  1. 节省空间
    当定义const的时候,仅仅给出了常量的内存地址,并没有分配内存.
    在程序执行过程中,仅仅进行一次内存的分配,即使这个值被引用多次.

相关文章

  • C++基础

    const关键字 const关键字标识常量,标明const右侧的变量(本质是常量)不可变。int const *b...

  • Go入门7:常量 const

    const关键字 const variable type = value; 简单定义: const LENGTH ...

  • Item 03:尽可能使用const

    Item 03: Use const whenever possible 关键字const const允许你指定一...

  • const/static/extern/const/static

    const -- 常量 const中文意思是“常量”,不可改变的固定的。const关键字主要作用: const ...

  • Dart 基本语法

    Final以及Const 在 Dart 中使用 final 以及 const 关键字来申明常量。使用 const ...

  • 兼容问题

    六、const 问题firefox / chrome 可以使用const关键字或var关键字来定义常量但是ie下只...

  • js 中声明常量关键字 var、let、const

    js 中声明常量的关键字:var、let、const,其中 let 和 const 是 ES6 中新增的关键字。 ...

  • 常见浏览器兼容问题

    JS相关 1. const问题 说明:Firefox下,可以使用const关键字或var关键字来定义常量;IE下,...

  • const在C语言上的定义和用法

    我们经常可以在函数接口参数位置看到有const关键字,但是这个关键字到底有什么作用呢?其实const关键字的作用主...

  • ES6新特性

    块作用域 let和const有关let 关键字(只在{}作用域内有用)const 关键字(常量也用于块即作用符 ...

网友评论

      本文标题:关键字 const

      本文链接:https://www.haomeiwen.com/subject/fldfhftx.html