---恢复内容开始---

1.指针常量与常量指针

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

指针常量:指针值是一个常量,即指针的值不能改变,永远指向固定的对象。

例:int a = 10, b = 15;   int* const pInt = &a;   pInt = &b;//错误

常量指针:指针指向的内容(所指对象的值)是一个常量,指向可以改变。

例:int a = 1, b = 2;  const int* pInt = &a;   pInt = &b;//正确

 

double PI = 3.14;

double* pNum = Π      //指针非常量,被指物非常量

const double* pNum = Π   //指针非常量,被指物常量

double* const pNum = Π   //指针常量,被指物非常量

const double* const pNum = Π  //指针常量,被指物常量

小结:const在*左边,被指物是常量;const在*右边,指针是常量。

 

2.注意事项

(1)确定对象在使用前已经先被初始化,一般在构造函数中初始化,注意格式,不等同于赋值操作。

(2)尽量使用const替换#define来定义某些常量。

(3)static对象的寿命:从被构造出来开始直至程序结束,程序结束时static对象会被自动销毁,即它们的析构函数会在main函数结束时自动调用。

---恢复内容结束---

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄