摘要: 内存的三种分配方式:
1. 从静态存储区分配:此时的内存在程序编译的时候已经分配好,并且在程序的整个运行期间都存在。全局变量,static变量等在此存储。
2. 在栈区分配:相关代码执行时创建,执行结束时被自动释放。局部变量在此存储。栈内存分配运算内置于处理器的指令集中,效率高,但容量有限。
3. 在堆区分配:动态分配内存。用new/malloc时开辟,delete/free时释放。生存期由用户指定,灵活。但有内存泄露等问题。
阅读全文
摘要:
★ 对于父类函数(virtual、非virtual),如果子类没有同名函数,则正常继承
★ 对于父类函数(virtual、非virtual),如果子类有同名函数,无同型函数,则不能调用父类函数
★ 对于父类函数(virtual、非virtual),如果有同型函数:
----非virtual函数由指针类型决定调用哪个
----virtual函数由指针指向的对象决定调用哪个(运行时决定)
阅读全文
摘要: 用strcpy和strncpy时的一些疑问答疑,含两个函数的源代码。
阅读全文
摘要: 较全面分析sizeof:
1. 一些基本类型的vc6 sizeof结果
2. 结构体的内存对齐
3. 含位域的结构体介绍
4. 含位域的结构体的内存对齐(压缩存储和非压缩存储)
5. 嵌套结构体的sizeof
6. 类对象的sizeof
7. 通过代码如何修改默认对齐模数
阅读全文