- 博客(7)
- 收藏
- 关注
原创 引用
<br />1、引用是什么,引用就是别名。<br />2、原名与引用的地址是相同的。<br />3、有具体的内存地址的才能使用引用。<br />4、引用是常量,只能对它进行初始化,不能对其进行赋值。<br />
2011-05-08 22:13:00 324
原创 通过指针访问堆中的数据成员
<br />(*p).成员函数<br />使用括号是为了保证先使用*号读取P内存地址中的值,即堆中的对象,然后再使用成员运算符“.”来访问成员函数。<br />C++专门用指针来间接访问对象的成员符号为“->”,该符号可以实现读取对象的内存地址并且访问该对象的成员。
2011-05-08 20:49:00 491
原创 内存泄露
<br />由于使用new创建的内存空间不会被系统自动释放,因此程序员不主动释放该new创建的内存空间,那么该内存区域将始终不能被其他的数据所使用,而指向该内存空间的指针是属于局部变量,当定义该指针的函数结束并返回时,该指针也就消失了,那么我们再也找不到该内存空间了,就好像丢失了该块内存一样,这种情形将一直持续到程序结束,该区域的内存才能恢复使用,因此在不需要一块内存空间时,我们必须对指向该块内存的指针使用关键字delete。
2011-05-08 20:02:00 389
原创 再说堆
堆中每个内存单元都是匿名的,因此必须先在堆中申请一个内存单元的地址,然后把他保存在一个指针中,这样只有使用该指针才能访问到该内存单元的数据。
2011-05-08 16:58:00 348
原创 栈和堆
1、栈区,由编译器自动分配并且释放,该区域一般存放函数的参数值、局部变量的值等。2、堆区,由程序员分配释放,若程序员不释放,程序结束时由操作系统回收。函数参数和局部变量存放在栈中,当函数运行结束并且返回时,所有局部变量和参数都被系统自动清除掉。为的是释放掉他们所占用的内存空间。全局变量可以解决这个问题,但是全局变量永远不会被释放掉,而且由于全局变量被所有类成员和函数共享,他的值很容易被修改,使用堆可以一举解决这两个问题。堆是采用匿名的方式进行数据存储的,只有通过指针才能访问堆中的数据,因此它的安全性是最好的
2011-05-08 15:50:00 709
转载 C++中指针的三大用途
<br />在操作大型数据和类时,由于指针可以通过内存地址直接访问数据,从而避免在程序中大量的复制代码,因此指针的效率是最高的。<br />1、处理堆中存放的大型数据<br />2、快速访问类的成员数据和函数<br />3、以别名的方式向函数传递数据
2011-05-07 21:51:00 1000
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人