Kebocoran memori berlaku apabila pengaturcara memperuntukkan blok memori sebelum ini. Kemudian pengaturcara tidak dapat melepaskannya dengan betul. Memori ini tidak lagi digunakan oleh program. Jadi tempat itu disimpan tanpa sebab. Itulah sebabnya ini dipanggil kebocoran ingatan.
Untuk kebocoran memori, beberapa blok memori mungkin terbuang. Ini juga boleh mengurangkan prestasi dalam kes ini jika sistem mempunyai memori yang mencukupi.
void my_func() { int *data = new int; *data = 50; }
Masalah di sini ialah penunjuk data tidak pernah dipadam, jadi ingatan terbuang.
#include <stdio.h> main(void) { auto int my_fun(); my_fun(); printf("Main Function\n"); int my_fun() { printf("my_fun function\n"); } printf("Done"); }
my_fun function Main Function Done
Atas ialah kandungan terperinci Kebocoran memori merujuk kepada situasi yang berlaku dalam C/C++. Apabila program memperuntukkan memori secara dinamik, ia tidak mengeluarkan memori dengan betul, menyebabkan memori tidak dapat digunakan semula, mengakibatkan kebocoran memori. Ini boleh menyebabkan atur cara berjalan lebih perlahan, menggunakan lebih banyak memori atau malah menyebabkan atur cara ranap. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!