周星驰:
不完全是这样,全局的delete[]是不需要大小参数,都说了编译器把这个自个儿处理了。但是。。。
[阅读: 560] 2006-03-17 19:39:52
很多情况下还是需要知道这个大小参数的,比如其它内存分配器的释放方法就需要用到这个大小(实际上又可以提到标板的allocator::deallocate方法),C++的语言标准设计肯定考虑了这种情况,所以在当delete[]作为成员时,是可以带size参数的(如:void delete[]( void *ptr, size_t sz )),这样当对象被析构时,带有size参数的成员delete[]操作符会被调用,这个参数即可被传给内存分配器的释放函数。