编程基础
赵Andy
全栈开发
展开
-
内存中堆和栈的区别
做为一个java程序员对内存r转载 2014-10-29 22:14:06 · 691 阅读 · 0 评论 -
关于虚函数的问题
虚函数是定义在基类中的,定义为 virtual 的函数是基类期待派生类重新定义的,基类希望派生类继承的函数不能定义为虚函数。定义虚函数的一个重点,我认为这也是虚函数存在的理由:支持动态绑定。 关于动态绑定在C++Primer中的解释是:运行时类型。基类类型的指针和引用可以绑定到派生类型的对象,在这种情况下,静态类型是基类引用(或指针),但动态类型是派生类引用(或指针)。通过基类的引用原创 2008-07-31 23:38:00 · 904 阅读 · 0 评论 -
经典的内存对齐问题。
见到一个贴是关于内存对齐的,不关它有没有用,我想都应该看一下。于是自己整理了一下贴子的内容。有人给出了很完整的回答,这里我就copy了,呵呵。 Win32平台下的微软C编译器(cl.exe for 80×86)的对齐策略: 1) 结构体变量的首地址能够被其最宽基本类型成员的大小所整除; 备注:编译器在给结构体开辟空间时,首先找到结构体中最宽的基本数据类型,然后寻找内存地址能被该基本数据类原创 2008-07-21 23:16:00 · 1012 阅读 · 0 评论 -
复制构造函数的疑惑
复制构造函数是为类成员之间的复制定义的一个类的成员函数。对许多类而言,合成复制构造函数只完成必要的工作。只包含类类型成员或内置类型(但不是指针类型)成员的类,无须显式地定义复制构造函数,也可以复制。那么复制构造函数应在什么时候必须自定义呢。当我们在类中定义了指针,动态的分配了资源,或在类中必须完成某些特定的操作时,这时就必须自定义复制构造函数。论谈上的朋友告诉我说:涉及到身深拷贝的时候就要显式地原创 2008-07-21 21:57:00 · 593 阅读 · 0 评论