-
const类型的数据成员只能通过初始化列表初始化,这种成员就叫常数据成员。
查看全部 -
这节没听明白
查看全部 -
this指向所在对象的本身的地址
查看全部 -
Array* this 和const Array *this的区别是const Array *this是一种加了限制的Array* this
为什么常指针不能调用普通成员函数,因为普通成员函数需要的不是常指针
比如void run(Array * this)
因为这里可能会通过this修改Array对象,所以需要一个普通指针,但是传入了一个常指针,那就可能通过常指针修改Array对象,与常指针的定义相互矛盾,所以报错
为什么普通指针可以调用常成员函数,因为常成员函数需要的是常指针
比如void run(const Array *this)
如果传入了一个Array *this,系统会自动将其转为const Array *this;
查看全部 -
this指针代表对象本身的地址
查看全部 -
this->len表示数据成员的len;
len表示参数的len
查看全部 -
这种指针如何理解
1.
coordinate *p11 =NULL;
p11 = new coordinate;
2.
coordinate *p11 =NULL;
*p11 = new coordinate;
*p11 不是看做对象吗,为什么第二种是错的
new coordinate分配的是一个地址,必须将其赋值给一个指针p11,不能直接单独一个式子赋给*p11,只能在定义时才能赋给*p11,如coordinate *p11=new coordinate。
*表示解引用,定义是的*是跟着前面的类型走的;列如: (int *) p = new int; 这个*是为了声明而出现。实际时p=new int; 而非*p = new int;
单独时*p,解引用取内容的,p保存的地址,*p保存内容。
查看全部 -
通过操纵p2改变p1的值。
查看全部 -
p1,p2是指针,用*修饰;*p1,*p2是变量(在此处是对象/类)。
查看全部 -
int* pointsToInt = &age;
int* pointsToInt = &dogsAge;
Integer age = 30
Integer dogsAge = 9
pointsToInt points to age
pointsToInt = 0x0025F788
*pointsToInt = 30
pointsToInt points to dogsAge now
pointsToInt = 0x0025F77C
*pointsToInt = 9
查看全部 -
对象指针实践代码
查看全部 -
对象指针,申请一块内存实例化对象,p为对象的指针
查看全部 -
深拷贝代码:将地址中的内容逐一拷入另一内存中
查看全部 -
浅拷贝举例
查看全部 -
深拷贝构造函数
查看全部
举报