小人物学个大习(61-70)
C++ primer
对指针的引用
int I =42;
int *p ;
int *&r =p;
r = &i;
实际上是令p指向了I使用const限定符可以限制变量,让其值不再改变
如果想在多个文件之间共享const 对象,必须在变量的定义之前添加extern关键字,并在使用的文件中进行相应声明
C++程序员经常把,对const的引用,简称为常量引用
常量引用初始化时,允许使用任意表达式作为初始值,只要改表达式能够转换成引用类型即可。
int I =42;
const int &r1 =i;
但是这里就不能够通过r1来更改i的值了。指向常量的指针,const double *ptr
要想 存放常量对象的地址,只能使用指向常量的指针,但是对于指向常量的指针而言,并没有规定所指对象必须是一个常量,即只是不能够通过该指针来更改所指对象的值const指针,指针本身就是常量,且常量指针必须初始化,初始化一旦完成,该地址就不能改变
int *const ptr = &errNumb;顶层const,表示变量本身是个常量,底层const,表示所指或者引用对象是个const,声明引用的const都是底层const。
执行拷贝操作时,
1.顶层const不受什么影响
2.拷入和拷出的对象必须具有相同的底层const资格,或者两个对象的数据类型必须能够转换,一般来说,非常量可以转换成常量,反之则不行常量表达式,是指不会改变并且在编译过程就能得到计算结果的表达式。
怎么说呢,还是要锻炼自己。
2023年7月04日