مدیریت حافظه (Memory Management)
مدیریت حافظه یعنی کنترل استفاده از حافظه برنامه. شامل ساخت، استفاده، و آزادکردن حافظه است. مثل مدیریت کشوی مدرسه است. جا می دهی، استفاده می کنی، و خالی می کنی.
حافظه در ++C
وقتی متغیر (Variable) می سازی، کامپایلر برایش جا می گیرد. بنابراین، برای متغیرهای معمولی نگران مدیریت دستی نیستی.
اندازه حافظه با sizeof
با عملگر sizeof می توانی اندازه نوع ها را ببینی. این کمک می کند برنامه بهینه تر بنویسی.
#include <iostream>
using namespace std;
int main() {
int myInt;
float myFloat;
double myDouble;
char myChar;
cout << sizeof(myInt) << "\n";
cout << sizeof(myFloat) << "\n";
cout << sizeof(myDouble) << "\n";
cout << sizeof(myChar) << "\n";
return 0;
}
آیا همیشه باید حافظه را خودت مدیریت کنی؟
گاهی بله، گاهی نه. برای متغیرهای معمولی، ++C خودش مدیریت می کند. اما هنگام ساخت حافظه در زمان اجرا، باید خودت بسازی و بعداً پاک کنی.
هشدار: مصرف زیاد یا پاک نکردن حافظه، کندی یا کرش می آورد.
گام های عملی ساده
- یک برنامه کوچک بساز.
- چند متغیر مختلف تعریف کن.
- اندازه ها را با
sizeofچاپ کن.
بعدی چیست؟
با اشاره گرها می توانی مستقیم به حافظه دسترسی بدهی. این کار قدرتمند است، اما خطرناک هم هست.
در بخش های بعد، ساخت حافظه با new و آزادسازی با delete را می بینی.
جمع بندی سریع
- مدیریت حافظه یعنی کنترل جا و استفاده.
sizeofاندازه نوع ها را می دهد.- گاهی مدیریت خودکار است، گاهی دستی.
- فراموشی پاک سازی، مشکل ساز می شود.
- اشاره گرها قدرت و ریسک دارند.
بیشتر بخوان: مدیریت حافظه، اشاره گرها، ارجاع زدایی، تغییر اشاره گرها, آدرس حافظه.