内存管理
二.在C++中,内存分成5个区,他们分别是堆、栈、自由存储区、全局/静态存储区和常量存储区 int* p=new int[5]; 这句话的意思就是:在栈内存中存放了一个指向一块堆内存的指针p。在程序会先确定在堆中分配内存的大小,然后调用operator new分配内存,然后返回这块内存的首地址,放入栈中。 堆和栈究竟有什么区别???? 主要的区别由以下几点:??? 1、管理方式不同;??? 2、空间大小不同;??? 3、能否产生碎片不同;??? 4、生长方向不同;??? 5、分配方式不同;??? 6、分配效率不同; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |