标签: c++ arrays memory-management
可能重复: C++ new int[0] — will it allocate memory?
当我这样做时会发生什么:
int * MakeArray( std::size_t Size ) { return new int[ Size ]; } MakeArray( 0 );
我们有这个代码(使用VC ++ 2005),而调试堆抱怨一个大小为0的内存块没有被释放。在这里返回大小为0的数组是否标准?
P.S。:请不要告诉我在分配前使用矢量或检查尺寸,我知道所有这些。这不是我的代码。我只是好奇。
答案 0 :(得分:1)
与this question非常相似。答案是它应该工作