堆和栈的区别
2016-11-27 本文已影响0人
0fbf551ff6fb
从管理方式来讲
对于栈来讲,是由编译器自动管理,无需我们手工控制;
对于堆来说,释放工作由程序员控制,容易产生内存泄露(memory leak)从申请大小大小方面讲
栈空间比较小
堆控件比较大
从数据存储方面来讲
栈空间中一般存储基本类型,对象的地址
堆空间一般存放对象本身,block的copy等
从管理方式来讲
对于栈来讲,是由编译器自动管理,无需我们手工控制;
对于堆来说,释放工作由程序员控制,容易产生内存泄露(memory leak)从申请大小大小方面讲
栈空间比较小
堆控件比较大
从数据存储方面来讲
栈空间中一般存储基本类型,对象的地址
堆空间一般存放对象本身,block的copy等