为什么我们称使用“new”关键字创建的内存为“动态内存”,因为它也是固定内存
以这种方式创建的数组int a[5]包含 5 个整数内存块,并且在运行时无法更改内存。以这种方式创建的数组 int *ptr=new int[5]也包含 5 个整数块,在这种情况下,内存也不能在运行时增加和减少,因此,从哪个角度来看,它被称为动态内存。
回答
口语术语“动态内存”来自语言定义的术语“动态存储持续时间”。见储存期限:
动态存储持续时间。使用动态内存分配函数为每个请求分配和释放对象的存储。有关使用此存储持续时间初始化对象的详细信息,请参阅 new-expression。
对象与创建new或new[]与破坏delete或delete[]具有动态存储持续时间。
它是动态的,因为生命周期在开发人员想要的时候开始和结束。每隔一个存储持续时间都有关于生命周期何时开始和何时结束的严格规则。它与数组大小或调整数组大小无关。非数组对象也可以具有动态存储持续时间。
THE END
二维码