如果我使用指针创建新内存而不删除第一个内存会发生什么

Bla*_*f23 2 c++ pointers new-operator

如果我有一个已经用于创建new[]内存的指针.然后再次使用它而不删除第一个或设置它nullptr,究竟发生了什么?编译器是自己删除第一个还是内存无法访问?

Mur*_*nik 7

您分配的先前缓冲区由您的进程保留,但是无法访问(因为您不再跟踪其指针),并且您无法释放它.它将保持分配,直到程序终止.这就是所谓的内存泄漏.