تغییر اشاره گرها (Modify Pointers)
در تغییر اشاره گرها، با ارجاع زدایی (Dereferencing) مقدار متغیر را عوض می کنیم. اشاره گر (Pointer) یعنی متغیری که آدرس حافظه را نگه می دارد. مثل داشتن آدرس کمد و تغییر وسایل داخلش.
تغییر اشاره گرها با عملگر * و اثر آن
می توانی مقدارِ آدرس را عوض کنی. در نتیجه، خود متغیر هم تغییر می کند.
string food = "Pizza";
string* ptr = &food;
cout << food << "\n";
cout << &food << "\n";
cout << *ptr << "\n";
*ptr = "Hamburger";
cout << *ptr << "\n";
cout << food << "\n";
نکته: تغییر *ptr یعنی تغییر مقدار همان متغیر اصلی.
گام های عملی
- یک متغیر معمولی بساز.
- یک اشاره گر همنوع بساز و آدرس را بده.
- با
*ptrمقدار را بخوان یا عوض کن.
جمع بندی سریع
- اشاره گر آدرس را نگه می دارد.
- با * مقدارِ آدرس را می گیری.
- عوض کردن *ptr، متغیر اصلی را عوض می کند.
- اول آدرس درست را به اشاره گر بده.
بیشتر بخوان: اشاره گرها، ارجاع زدایی، آدرس حافظه. همچنین برای سئو: تغییر اشاره گرها.