摘要:
1、类的成员分为静态成员和实例成员。为什么设计出静态成员和实例成员? 静态成员对类以及类的所有实例有意义,实例成员对每个实例有意义。考虑,Person类,有个age字段和maxAge字段。每个Person实例都有自己的age,但所有的Person实例都有相同的maxAge(最大年龄极限),因此,maxAge只需要一份就好了,大家共享。有两个好处:节约内存和保持一致。2、成员分为字段和方法,首先考虑字段: 静态字段:只有一块内存。 实例字段:每个实例都有专属于自己的一块内存。3、对于方法: 无论静态方法和实例方法,只有一块内存。那么问题来了,在成员方法中会使用实例的字段,怎么区分是哪个实... 阅读全文
posted @ 2013-11-25 20:08
Andy Niu
阅读(2438)
评论(0)
推荐(0)
摘要:
1、使用场景 代码提供者告诉客户(代码使用者),这个方法不会修改对象的内容,请客户放心使用。2、代码提供者,尝试在const成员方法中修改对象内容,编译报错。在成员方法中,this是const 指针,不允许修改this指向其他内容。const 成员方法,限制了this为指向const对象的const指针。3、const对象只能调用const成员方法,因为non-const成员方法可能会修改对象内容,这与const对象矛盾。4、non-const对象可调用const成员方法,也可以调用non-const成员方法。5、为什么可以做到上面的约束? 如果B是A的别名(包括引用,指针),则B不能放大.. 阅读全文
posted @ 2013-11-25 19:33
Andy Niu
阅读(232)
评论(0)
推荐(0)
浙公网安备 33010602011771号