C++关于delete的使⽤
1. delete安全⽤法:
void safe_release()
{
遐迩贯珍void* t = m_ptr; //先赋值nullptr,再delete,可防⽌被在其它线程占⽤时,引起的错误
m_ptr = nullptr; //⽅便以后检查指针是否有效,亦防⽌再次访问⽆效的指针 大连理工大学bbs
delete t; //释放内存
}
energyplus2. delete[]规律性
void fun()
{
int* pArr = new int[9];
吕传赞
delete[] pArr; //new[] 必须配合delete[]使⽤,有时使⽤delete了不会报错(例如delete基本类型或者结构体等的数组指针) 联通华盛营销管理系统string* pStr = new string[9];
delete[] pStr; //delete[]会逐个调⽤“对象数组”的每个对象的“析构函数”,这⾥⽤delete肯定报错(除⾮“这个类,没有析构函数”) }