这是本文档旧的修订版!
当我们需要动态分配内存的时候,频繁使用 new/malloc 会占用大量的时间和空间,甚至生成大量的内存碎片从而降低程序的性能,可能会使原本正确的程序 TLE/MLE。
这时候我们就需要使用到「内存池」这种技巧:在真正使用内存之前,先申请分配一定大小的内存作为备用,当需要动态分配时则直接从备用内存中分配一块即可。
当然在大多数 OI 题当中,我们可以预先算出需要使用到的最大内存并一次性申请分配。
如申请动态分配32位有符号整数数组的代码: