PDA

View Full Version : سوال: کاربرد توابع set و get چیست



storm_saeed
جمعه 25 آذر 1390, 09:15 صبح
درود
دوستان توابع set و get کلا چه کاربردی دارند لطفا با مثال توضیح دهید
پیشاپیش ممنون

hajizadeh.m
شنبه 26 آذر 1390, 13:42 عصر
خب از اسمشون معلومه دیگه.منظورت دقیقا چیه؟
تابع set رو برای دادن مقدار به متغیرها تویبرنامه مینویسن و تابع get رو برای گرفتن مقدار اون متغیر ها و مثلا نمایش اونها در برنامه.
بازم توضیح بیشتر خاستی در خدمتیم

storm_saeed
شنبه 26 آذر 1390, 18:57 عصر
اگه لطف کنی یک بیشتر توضیح بدی ممنون

hajizadeh.m
یک شنبه 27 آذر 1390, 08:51 صبح
ببین مثلا توی یه کلاس ک تعریف کردی چندتا متغر هم تعریف میکنی ک باهاشون کار کنی دیگه.
اینجا کار خیلی خوب و از لحاظ برنامه نویسی ساخت یافته اینه که بیای و برای مقدار دادن اولیه به اون متغیر ها برای هرکدومشون که لازمه یه تابع set بنویسی که مثلا مقدار رو که از کاربر کیگیره به اون تابع بفرسته و اون تابه فقط مقدار متغیر رو برابر مقدار گرفته شده قرار بده همین.اینجوری اگه وسط برنامه هم اون متغیر بخواد عوض بشه فقط کافیه مقدار جدید به تابع set فرستاده بشه.
برای تابع get هم همین طوره.اون مقدار رو بر میگردونه.
مثلا کد زیر سن طرف رو میپرسه و چاپ میکنه با توابع set ,get :

#include <iostream>
using namespace std;

int year;

void SetAge(int a)
{
year=a;
}

int GetAge()
{
return year;
}

int main()
{
int a;
cout<<"Enter your age :"<<endl;
cin>>a;
SetAge(a);
cout<<"Your age is "<<GetAge()<<endl;
}

البته اینجا این استفاده خیلی ساده و الکیه ولی توی کلاسها خیلی به درد میخوره

ukiocsmo
جمعه 07 آبان 1400, 12:05 عصر
درود
دوستان توابع set و get کلا چه کاربردی دارند لطفا با مثال توضیح دهید
پیشاپیش ممنون

int a {set;} یعنی فقط میتونی مقداری به متغیر بدی ولی امکان دریافت اون مقدار رو ازش نداری
int a {get;} یعنی فقط میتونی مقدار متغیر رو دریافت کنی ولی نمیتونی مقدارش رو تغییر بدی یا چیزی داخلش بریزی
int a {get;set;} یعنی میشه داخلش هم داده ریخت و هم داده رو ازش خوند