آموزش رایگان ++C ، Rust ,golang: post #121 — TG.ME

مفهوم Pass By Reference در ++C

تعریف : به جای کپی مقدار متغیر اصلی به عنوان آرگومان تابع به تابع داده می شود که به صورت ارجاع به متغیر تعریف می شود

عملکرد: چون تابع به آدرس حافظه متغیر دسترسی دارد، پس می تواند مقدار متغیر اصلی را تغییر دهد.

کاربرد: زمانی از این روش استفاده کنید که لازم است مقدار متغیر اصلی را تغییر دهید و مقدار متغیر اصلی بزرگ است و اگر در مموری کپی شود حجم زیادی میگیرد ( ساختار داده هایی نظیر آرایه ،وکتور و ..)

مثال :
#include <iostream>
using namespace std;

void incrementByReference(int& x) {
x = x + 1;
cout << "Inside function: " << x << endl;
}

int main() {
int num = 10;
incrementByReference(num);
cout << "Outside function: " << num << endl;
return 0;
}

در مثال فوق چون از علامت & استفاده کردیم قبل از آرگومان تابع بنابراین مقدار اصلی متغیر تغییر می کند و بعد ازاجرای تابع مقدار متغیر از ۱۰ به ۱۱ تبدیل می شود


Inside function: 11
Outside function: 11
❤6👍2
December 18, 2024 1.5K 5