一般的数组,其成员都存储在堆栈中。然而通常堆栈内存有限,而自由存储区大得多。所以可以在自由存储区声明每个对象,然后仅将指向对象的指针存储到数组。这可极大的减少占用的堆栈内存量。看下列代码:
在这个例子中,数组Family及其所有元素都存储在堆栈中,但创建的500个Cat对象存储在自由存储区中。
本文介绍了一种通过在自由存储区中分配对象并利用指针数组来引用这些对象的方法,以此来降低堆栈内存的消耗。这种方法尤其适用于处理大量对象的情况。
一般的数组,其成员都存储在堆栈中。然而通常堆栈内存有限,而自由存储区大得多。所以可以在自由存储区声明每个对象,然后仅将指向对象的指针存储到数组。这可极大的减少占用的堆栈内存量。看下列代码:
在这个例子中,数组Family及其所有元素都存储在堆栈中,但创建的500个Cat对象存储在自由存储区中。
1158
2787

被折叠的 条评论
为什么被折叠?
