既然使用变量就可以访问数据,那为何还用指针呢?换句话说,我该何时用指针呢?这个问题应该困扰不少像我一样对编程还不开窍的人,今天看了一些,总结一下:
指针最常被用于完成下列3种任务:
1.管理自由存储区(堆)中的数据,即程序员自己申请的内存中的数据;
2.访问类的成员数据和函数;
3.按引用传递参数。
1.管理自由存储区(堆)中的数据,即程序员自己申请的内存中的数据
程序会用到5个内存区域:
全局名称空间 全局变量
堆 堆是 余下的所有内存,由程序员申请
寄存器 内部管理工作,如记录栈顶指针或者指令指针
代码空间 代码
栈 局部变量,函数参数
局部变量不是永久性的,函数返回时,局部变量就被删除。这很好,因为这意味着根本不用为管理这种内存而劳神;也不好,因为这使得函数在不将堆中变量复制到调用函数中的目标对象的情况下,将难以创建供其他对象或函数调用的对象。全局变量解决了这种问题,其代价是在整个程序中都可以访问它们,这导致创建的程序难以