美文网首页
const关键字

const关键字

作者: _gentle | 来源:发表于2018-08-14 23:15 被阅读0次
  • const 修饰全局变量时会修改其链接属性为内部链接。如果想要覆盖这种链接可以使用extern关键字覆盖这种链接属性。例如
const int a = 1;//内部链接
extern const int a = 2; //外部链接

但不要轻易的这么做,因为C++设计全局常量为内部链接的是有原因的。假如你在一个头文件(假设为constant.h)中申明了一系列的常量,工程的其他文件下引用constant.h。若全局常量的链接性为外部的,那么将有一个只能有一个文件包含constant.h,如果有多个文件包含,则会产生重定义的错误。因此其他文件必须使用extern来引用这个头文件中的常量,造成不便。因此假如你要使得一个常量为外部链接的,需要注意到这一点

  • const关键字修饰指针
int* const p = &a;//指针不可修改
const int* p = &b;//指针指向的内存区域不可修改
  • const 修饰成员变量时,必须在头文件中声明时直接进行初始化
class A {
public:
    const int a = 2;
};
  • const修饰成员函数时,该函数内部不可以修改数据成员的值(mutable修饰的关键字除外)
class A {
public:
    void f() const {
    //  a = 2;//error
        int b = 2;//ok
        c = 4;//ok
    }
    int a;
     mutable int c = 3;
};

相关文章

  • 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/rbdkvftx.html