[带头学C++]基础知识[入门篇]

编程入门 行业动态 更新时间:2024-10-27 23:31:58

[带头学C++]<a href=https://www.elefans.com/category/jswz/34/1769428.html style=基础知识[入门篇]"/>

[带头学C++]基础知识[入门篇]

1.const限定符、限制符

       引用C++primer5中对congst的解释:有时我们希望定义这样一种变量,它的值不能被改变。例如,用一个变量来表示缓冲区的大小。使用变量的好处是当我们觉得缓冲区大小不再合适时,很容易对其进行调整。另一方面,也应随时警惕防止程序一不小心改变了这个值。为了满足这一要求,可以用关键字const对变量的类型加以限定:

const int bufSize=512;    //输入缓冲区大小

这样就把 bufsize定义成了一个常量。任何试图为 bufsize 赋值的行为都将引发错误:

bufSize=512;  //错误:试图向const 对象写值

因为 const 对象一旦创建后其值就不能再改变,所以const 对象必须初始化。一如既往初始值可以是任意复杂的表达式:

const  int  i=get size();  //正确:运行时初始化
const  int  j=42;            // 正确;编译时初始化
const  int  k;                 //错误:k是一个未经初始化的常量 

2.如何使用const关键字

     const 是 C++ 中的一个关键字,表示常量。通过使用 const 关键字来声明变量,可以指定该变量的值在声明后不能被修改。(本质修饰的对象是变量,使用const修饰以后变成只读变量,不可修改,就是常量了)

const 关键字的用法有以下几种:

1.声明常量

const int num = 10; // 声明一个常量 num,并初始化为 10

       在声明常量时,需要在类型前加上 const 关键字,表示该变量是一个常量。一旦常量被初始化后,其值将不能再改变。 

2. 函数参数中使用 const

void printValue(const int num) {// 函数中的代码// 不会修改 num 的值
}

      在函数参数中使用 const 关键字可以表示该参数是一个只读参数,在函数中不能修改它的值。这样可以确保函数内部不会无意间修改传入的参数。

3.对象成员中使用 const

class MyClass {
private:const int value; // 声明一个常量成员变量 value
public:MyClass(int val) : value(val) {// 构造函数中初始化常量成员变量 value}void printValue() const {// 常量成员函数,不会修改对象的成员变量// 可以读取成员变量的值}
};

        在类中使用 const 可以声明常量成员变量,表示该成员变量在对象创建后不能被修改。同时,在成员函数后面添加 const 关键字,可以表示该成员函数是一个常量成员函数,它不会修改对象的任何成员变量。

默认状态下,const 对象仅在文件内有效

3.引用const对象

      可以把引用绑定到 const 对象上,就像绑定到其他对象上一样,我们称之为对常量的引用(reference to const)。与普通引用不同的是,对常量的引用不能被用作修改它所绑定的对象:

const  int  num = 255;
const  int  &yongnum  =  num ; //正确:引用及其对应的对象都是常量

yongnum  =42;    //错误:yongnum是对常量的引用 不可修改
int &yongnum2  =  num;     //错误:试图让一个非常量引用指向一个常量对象
 

这里引用一下c++ prime 5里面对应常量引用的解释 

 

更多推荐

[带头学C++]基础知识[入门篇]

本文发布于:2023-12-03 13:36:53,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1655938.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:基础知识   入门篇

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!