我曾尝试创建了一段代码,以了解内存重新分配工作,我已经明白,对于每一个新的运营商我用,我需要删除它,我已经做了一段代码,似乎这样做,但看着任务管理器,之后我运行代码,首先它需要344KB和创建节点35.3mb后删除它们后会下降到3044Kb(3MB),而不是这是344KB的初始内存使用情况,我不知道为什么.
#include <iostream>
using namespace std;
class Node{
public:
int value;
Node *next;
Node(int value){
this->value = value;
next = NULL;
}
};
int main(){
system("pause");
Node *head = new Node(999999);
Node *prev = head;
for (int i = 0; i < 500000; i++){
Node *newNode = new Node(i);
prev->next = newNode;
prev = newNode;
}
while (head != NULL){
Node *toDelete = head;
head = head->next;
delete toDelete;
}
system("pause");
return 0;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
51 次 |
| 最近记录: |