我是靠谱客的博主 顺心学姐,最近开发中收集的这篇文章主要介绍C++ const关键字 总结,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

1、const修饰变量

const修饰普通变量只需掌握两点:

(1)声明时必须进行初始化;

(2)变量的值不能再改变。

如代码:

const int i;	//error: uninitialized const 'i'
const int j =0;
j = 1;		//error: assignment of read-only variable 'j'
const修饰指针变量总结出来两种情况:

(1)const char* p1 = "111p1";(*p1是常量)

(2)char* const p2 = "222p2";(p2是常量)

const char* p1 = "111p1";

char* const p2 = "222p2";

p1++;//right

p2++;// error:p2 is const

*p1 = 'a'; //error :*p1 is const

const修饰引用类型变量:
const int ci = 1024;
const int &r1 = ci; // ok: both reference and underlying object are const
r1 = 42; // error: r1 is a reference to const
int &r2 = ci; // error: non const reference to a const object
2、const修饰函数参数

有四种情况:
(1)void fun1(const int i);//传递过来的参数在函数内不可以改变(因i是形参,它即使改变也不会改变实参的值)
(2)void fun2(const char* p);//指针p所指的内容为常量不可变,如*p='a',则出错。
(3)void fun3(char* const p);//指针p本身不可改变(形参,影响不到实参的值)
(4)void fun4(const int& i);//引用i的值不能改变

3、const修饰类成员变量与成员函数
(1)对于C++ const变量的成员变量,只能在构造函数里使用初始化成员列表来初始化,试图在构造函数体内进行初始化const成员变量会引起编译错误。
(2)const修饰的成员函数不会修改类成员变量。
如:char* getName() const;

有关const关键字还有更多的方面。请参见:http://www.cprogramming.com/tutorial/const_correctness.html

最后

以上就是顺心学姐为你收集整理的C++ const关键字 总结的全部内容,希望文章能够帮你解决C++ const关键字 总结所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(83)

评论列表共有 0 条评论

立即
投稿
返回
顶部