constant 前面的是对被指向对象的修饰, 后面的是对指针本身的修饰 常量指针(被指向的对象是常量) 定义: 又叫常指针,可以理解为 常量的指针 ,指向的是个常量 关键点: 1. 常量指针指向的对象不能通过这个指针来修改,可是仍然可以通过原来的声明修改; 2. 常量指针可以被赋值为变量的地址,之 ...
分类:
其他好文 时间:
2018-03-26 00:34:45
阅读次数:
208
/** 只读变量和常量 const 只读 const int a; int const a;//同上面的代码行是等价的,都表示一个常整形数。 int *const a;//const具有"左结合"性,即const修饰*,那么,不难理解,该句表示一个指向整数的常指针,a指向的整数可以修改,但指针a不能... ...
分类:
编程语言 时间:
2018-02-24 19:27:20
阅读次数:
190
那么,为啥 Test a(10) , Test b(20) 然后 我a.getI() 取到的是10,而不是20 就能将那个 10 给 a 对象的 m1 是因为有 this 这个常指针 实际上:当我调用 a.geti() 是把a的地址传给了 geti函数,这样,才会有了 取到了a的10 a.geti( ...
分类:
其他好文 时间:
2018-01-03 19:44:35
阅读次数:
172
下面的声明都是什么意思?const int a; int const a; const int *a; int * const a; int const * a const; 1、a是一个常整形数 2、a是一个常整形数 3、a是指向常整形数的指针(整形数不可以修改,指针可修改) 4、a是指向整形数的 ...
分类:
编程语言 时间:
2017-09-01 12:55:00
阅读次数:
161
1、C语言中const与 C++中的const void main() { const int a = 10; int *p = (int*)&a; *p = 20; printf("%d", a); } 比較上述代码在C中和C++中执行结果:C:打印20;C++:打印0。 由此可见,C语言中的co ...
分类:
编程语言 时间:
2017-08-10 14:15:43
阅读次数:
351
指向对象的指针。指向数据成员的指针,指向成员函数的指针; 数组即指针,数组的指针,指针数组; 指向函数的指针,指向类的成员函数的指针,指针作为函数參数,指针函数; 指针的指针,指向数组的指针;常指针。指向常对象的指针。 …… 大哥,这些都是什么鬼?。 用以下一张图全概括。用样例对比图示。有感觉,就用 ...
分类:
编程语言 时间:
2017-08-03 20:10:49
阅读次数:
177
如下所示: 定义一个类 我们通过如下的方法实例化对象: 编译出错,编译结果显示如下: 对于coor1来说,它调用PrintInfo函数是没有问题的;但是对于coor2调用GetX函数来说,这就 会有问题,由于coor2是常对象引用,常对象引用只有读权限,而GetX在定义的时候要求参数必须 有读写权限 ...
分类:
其他好文 时间:
2017-06-17 22:41:24
阅读次数:
268
c++类中可以用const关键字来声明不修改对象的成员函数,它使用时需要注意: 1、常量对象只能调用const成员函数 2、非常量对象可以调用const成员函数 以下列代码为例,来解释: 程序编译结果为: [Error] passing 'const Person' as 'this' argume ...
分类:
编程语言 时间:
2017-04-29 22:14:56
阅读次数:
229
堆 所有通过new创建的对象的内存都在堆中分配,其大小可以通过-Xmx和-Xms来控制。堆被划分为新生代和旧生代,新生代又被进一步划分为Eden和Survivor区,最后Survivor由FromSpace和ToSpace组成,结构图如下所示: 新生代。新建的对象都是用新生代分配内存,Eden空间不 ...
分类:
其他好文 时间:
2017-04-05 01:06:53
阅读次数:
231
1.const用法: 1.c与c++ const对比 c中的const量,只是一个可读的变量,可以通过强制转换其指针来改变值。 c中const量不能用于数组 2. 指向常量的指针和常指针 c++强类型转换一般约束只会增强,不会削弱。 比如: 3,4两行无论是const还是非const变量的地址,对于 ...
分类:
其他好文 时间:
2017-02-15 21:57:22
阅读次数:
173