文章迁移到此地址:https://mp.weixin.qq.com/s/7vuWE_yg0AlxYY8GPJHtIg
先写一个demo,里面有new[],delete[],使用C++11 MTd选项编译:
#include <string>
int main()
{
auto pS = new std::string[10];
delete[] pS;
return 0;
}
本文介绍了在C++中使用new[]和delete[]的实现原理。通过编写一个demo,使用C++11 MTd选项编译,展示了new[]时在返回地址前保存数组长度,返回给用户的地址是该地址+4;delete[]时通过传入地址-4获取数组长度,实现数组释放。
文章迁移到此地址:https://mp.weixin.qq.com/s/7vuWE_yg0AlxYY8GPJHtIg
先写一个demo,里面有new[],delete[],使用C++11 MTd选项编译:
#include <string>
int main()
{
auto pS = new std::string[10];
delete[] pS;
return 0;
}
2762
1823
287
3077

被折叠的 条评论
为什么被折叠?