前言
一、new与delete是什么
new与delete是C++进行heap(堆)内存管理的关键字
二、详细分析
1.new(先分配memory,再调用构造函数)
有如下类:
class Complex
{
Complex(……){……};
~Complex(){};
private:
double m_r;
double m_i;
}
当执行如下代码时,编译器的操作如下
2.delete(先调用析构函数,再释放memory)
有如下类:
class String
{
~String()
{
delete[] m_data;
}
private:
char* m_data:
}
当执行如下代码时,编译器的操作如下: