vc 频繁分配动态内存new 是否会降低效率

2025-03-11 11:35:52
推荐回答(3个)
回答1:

最基本的池就是释放的对象并不真正交还给系统,而是自己放在一个链表里。下次需要新建对象的时候直接从这个链表里获取。不过这个方法并不适合长度不确定的数组。

对于最大长度确定并且不是很大的数组一般都是一次申请够。如果确定不了最大长度或者最大长度太大,最简单的是逐步增加尺寸重新申请的方法,比如一开始申请16字节,不够了申请32字节,再不够了申请64字节。

总体上这个要具体问题具体分析

回答2:

是的,解决方法,开一块比较大的空间,如果够用最好,不够用再加,STL使用的是这种方法。

回答3:

没必要在这上面多费心. 用完了别忘了释放就是了.