【发布时间】:2009-06-02 13:39:45
【问题描述】:
我正在编写一个 C++ 应用程序,它需要一块内存(大约 1000 字节)作为一些文本处理的临时缓冲区。该操作每秒可重复多达 10,000 次。
任何人都可以确认每次我需要缓冲区时分配内存会更昂贵(即带有智能指针的新内存,超出范围时释放内存),而不是拥有一个固定缓冲区并清除它(写每次处理完成时,它的每个字节都有一个零)?
这听起来像是 C++ 的常识,但我只是在互联网上找不到任何可以证实它的东西。
具有自动垃圾收集功能的计算机语言(例如 Java、.net)的情况是否有所不同?
【问题讨论】:
-
显然是静态缓冲区!!!如果您需要将所有内存归零,请使用 memset :)
标签: java .net c++ memory-management