sha*_*oth 5 c++ memory-management
根据C++ 03标准,5.3.4/10
对于char和unsigned char的数组,new-expression的结果与分配函数返回的地址之间的差异应该是任何对象类型的最严格对齐要求(3.9)的整数倍,其大小不大于正在创建的数组的大小.
分配函数(operator new[]())也需要为任何可能的类型分配对齐的内存.所以引用的部分有效地说new char[sizeof(T)]应该产生适当的类型对齐的内存T.
这个要求的目的是什么?我可以调用operator new()(或operator new[]())保证返回正确对齐的内存并具有对齐的内存.我的意思是无论如何new char[]会打电话,operator new()[]所以我可以自己打电话.
引用要求的目的是什么?为什么不直接打电话operator new[]()?
| 归档时间: |
|
| 查看次数: |
208 次 |
| 最近记录: |