??
未初始化的全局变量和静态变量在bss段中,已经初始化的全局变量和静态变量在数据段中(DS)
自定义申请的内存空间在堆中 void *malloc(size_t size)
free(p) ; p=NULL; 当指针指向malloc函数的返回值时,用完后要做内存释放和令指针指向NULL,当只有free(p)时还能打印出p指向的这片地址内容,但内容不确定
悬空指...
分类:
其他好文 时间:
2014-08-04 17:38:17
阅读次数:
206
在"了解集合本质必须要知晓的概念-链表"中,我们了解了链表的概念和种类,并且模拟了一个单向链表。本篇体验的堆栈是约束版的链表,只能在栈顶接收新节点和释放节点。 堆栈的主要操作是压栈和出栈。压栈是将新节点放在栈顶,出栈是从栈顶取出一个节点,返回新弹出节点的数据项。堆栈也称为后进先出的数据结构。 接着上...
分类:
其他好文 时间:
2014-08-04 17:25:17
阅读次数:
211
【1】学会动态分配内存 用前面介绍的方法定义的对象是静态的,在程序运 行过程中,对象所占的空间是不能随时释放的。但 有时人们希望在需要用到对象时才建立对象,在不 需要用该对象时就撤销它,释放它所占的内存空间 以供别的数据使用。这样可提高内存空间的利用率Box *pt=new Box(12,...
分类:
其他好文 时间:
2014-08-04 13:38:37
阅读次数:
190
1. Malloc:malloc/free是C++和C的标准库函数,可用于申请动态内存和释放内存。对于非内部数据类型的对象而言,光用 malloc/free无法满足动态对象的要求。对象在创建的同时要自动执行构造函数,对象在消亡之前要自动执行析构函数。由于malloc/free是 库函数而不是运算符,...
分类:
其他好文 时间:
2014-08-04 13:37:38
阅读次数:
241
先来解释一下闭包:1.闭包就是函数嵌套函数2.内部函数可以引用外部函数的参数和变量3.参数和变量不会被垃圾回收机制所收回( 垃圾回收机制就是用完变量之后就在内存中释放 )使用闭包的好处:1.希望一个变量长期驻扎在内存当中2.避免全局变量的污染3.私有成员的存在闭包的用法:1.模块化代码我们看一个闭包...
分类:
编程语言 时间:
2014-08-04 10:43:37
阅读次数:
251
Part 1 在C++中,内存分成5个区,分别是堆、栈、自由存储区、全局/静态存储区和常量存储区。 1.栈,在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集中,效率很高,但是分配的内存容量有限。 2.堆,就是那些由new...
分类:
编程语言 时间:
2014-08-04 08:16:46
阅读次数:
287
转自:http://blog.csdn.net/hairetz/article/details/4141043一、预备知识—程序的内存分配 一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其 操作方式类似于数据...
分类:
其他好文 时间:
2014-08-03 23:10:26
阅读次数:
292
前言 一般频繁切换Fragment会导致频繁的释放和创建,如果Fragment比较臃肿体验就非常不好了,这里分享一个方法。声明 欢迎转载,但请保留文章原始出处:) 博客园:http://www.cnblogs.com 农民伯伯:http://over140.cnblogs.com正文 一、应用场.....
分类:
移动开发 时间:
2014-08-03 20:20:05
阅读次数:
319
SQL Server死锁总结 ??1.?死锁原理 ????根据操作系统中的定义:死锁是指在一组进程中的各个进程均占有不会释放的资源,但因互相申请被其他进程所站用不会释放的资源而处于的一种永久等待状态。 ????死...
分类:
其他好文 时间:
2014-08-03 18:14:46
阅读次数:
332
1.new、delete、malloc、free关系
delete会调用对象的析构函数,和new对应free只会释放内存,new调用构造函数。malloc与free是C++/C语言的标准库函数,new/delete是C++的运算符。它们都可用于申请动态内存和释放内存。对于非内部数据类型的对象而言,光用maloc/free无法满足动态对象的要求。对象在创建的同时要自动执行构造函数,对象在消亡之...
分类:
编程语言 时间:
2014-08-03 18:11:25
阅读次数:
407