什么被认为是C++中的一个小对象?

Jan*_*ard 5 c++ memory-management

我读过"现代C++设计"中的小对象分配.Andrei Alexandrescu认为通用运算符(new和delete)在分配小对象时表现不佳.

在我的程序中,在免费商店中创建和销毁了许多对象.这些对象的大小超过8000个字节.

什么尺寸被认为是小的?在C++中进行内存分配时,8000字节是小还是大?

Jam*_*lis 13

"小"的定义各不相同,但一般来说,如果一个对象的大小小于堆分配引起的大小开销(或至少接近该大小),则该对象可被视为"小".

因此,在大多数情况下,16字节的对象可能被认为是"小"的.在某些特定情况下,32字节对象可能被认为是小的.一个8,000字节的对象绝对不是"小".

通常,如果您要经历使用小型对象分配器的麻烦,那么您希望提高某些代码块的性能.如果使用小型对象分配器对您的性能没有帮助,您可能不应该使用它.