构造函数主要是用来创建对象时为对象赋初值来初始化对象。总与new运算符一起使用在创建对象的语句中 。A a=new A();构造函数具有和类一样的名称;但它是一个函数具有函数的所有特性,同一个类里面可以有多个参数不同的构造函数,也就是函数的多态。构造函数是在实例化类时最先执行的方法,通过这个特性可以...
分类:
其他好文 时间:
2014-08-08 12:31:05
阅读次数:
245
转眼已经工作快6年了,最开始做了2年J2EE;然后整了2年的数据仓库,主要是Cognos的报表开发;现在从事4G LTE核心网的开发,用的语言任然是Java,但写代码的机会不多,基本都是看代码找BUG,偶尔做点new feature也是在比较成熟的框架上复制、粘贴、修改,大部分时间还是在理解业务,钱...
分类:
编程语言 时间:
2014-08-08 01:38:05
阅读次数:
580
代码:
#include
using namespace std;
/*
class a{
float k; // 4字节
virtual void foo(){} //有一个4字节的指针指向自己的虚函数表
};
class b : virtual public a{
virtual void f(){}
}; 有这样的一个指针vptr_b_a,这个指针叫虚类指针,也是四个字节...
分类:
其他好文 时间:
2014-08-07 23:23:25
阅读次数:
465
参考:深度探索C++对象模型 (stanley B.Lippman著 侯捷翻译)
1. Page9 : C++对象模型,说明每一个类仅有一个虚函数表Vtbl,而类的每一个对象都有指向其表的指针。
2. Page30:引用也需要与一个指针(大小为4BYTE)相同的空间。
3. Page28: 指针类型会教导编译器如何解释某个特定地址中的内存内容及大小。
4. Page39: explicit...
分类:
编程语言 时间:
2014-08-07 23:19:15
阅读次数:
295
多态的概念 多态==晚绑定。 不要把函数重载理解为多态。 因为多态是一种运行期的行为,不是编译期的行为。 多态:父类型的引用可以指向子类型的对象。 比如 Parent p = new Child(); 当使用多态方式调用方法时,首先检查父类中是否有该方法,如果没有,则编译错误; ...
分类:
编程语言 时间:
2014-08-07 18:40:00
阅读次数:
238
c++类大小和机器还有编译器有关。64位机器指针大小为8个字节,32位机器为4个字节。每个实例在内存中都有一个独一无二的地址,为了达到这个目的,编译器往往会给一个空类隐含的加一个字节,这样空类在实例化后在内存得到了独一无二的地址;有虚函数的类有个virtual table(虚函数表),里面包含了类的...
分类:
编程语言 时间:
2014-08-07 18:37:30
阅读次数:
251
前言: 对菜鸟开发者的忠告:花一万个小时练习 Coding,不要浪费一万小时无谓地 Debugging(也就说看代码) 看上面的UML图,我们创建一个抽象的Instrument类,类中有一个抽象方法paly,然后所有的子类都继承这个类并实现paly方法。(若不懂继承,请参照另一篇...
分类:
其他好文 时间:
2014-08-07 18:28:50
阅读次数:
237
在尾部生产,头部消耗的链表,数据增加可重复使用的功能。新数据类型继承Nod,实现newNod方法即可。使用时没有模板那么方便,需要强转。感觉newNod和Windows好多结构体有个表示结构体大小的成员主要告诉new多大,使用时强转和CPtrList差不多。感觉这样设计也没啥不妥。回顾C++// D...
分类:
移动开发 时间:
2014-08-06 22:40:42
阅读次数:
333
java三大特性是:封装,继承,多态1.封装类的属性一般私有。类的方法:该公开的公开,该私有的私有类,分装了数据和方法,方法,封装了实现的过程2.继承实际是对父类的扩展,实现对代码的复用父类与子类是一般化和特殊化的关系,子类是父类更加详细的分类,是is-a的关系3.多态多态有两种表现形式:重载和覆盖...
分类:
编程语言 时间:
2014-08-06 18:04:11
阅读次数:
243
枚举器与数据操作1)枚举器为我们提供了访问集合的方法,而且解决了访问对象的“数据类型不确定”的难题。这是面向对象“多态”思想的应用。其实是通过抽象不同集合对象的共同代码,将相同的功能代码封装到了枚举器的这个接口里,就可以用一套代码来遍历不同类型的集合。2)每个集合类(Vector或Hashtable...
分类:
编程语言 时间:
2014-08-06 17:46:21
阅读次数:
196