PDA

View Full Version : سوال: متغیر پابلیک در کلاس بصورت readonly



behnam-s
شنبه 21 شهریور 1388, 00:54 صبح
سلام
دوستان چطور می تونم یک متغیر پابلیک تو کلاس بصورت readonly ایجاد کنم. مثل خیلی از کلاس هایی که در .net وجود داره؟

deopen
شنبه 21 شهریور 1388, 01:13 صبح
منظورتون از readonly یک متغیر const یا ثابت است خوب این خیلی سادست :


class className {
public:
const int Variable=5;
}

behnam-s
شنبه 21 شهریور 1388, 01:20 صبح
نه منظورم این نیست
می خوام متغیر داخل کلاس قابل تغییر باشه ولی از بیرون فقط قابل خوندن باشه

PC2st
شنبه 21 شهریور 1388, 01:57 صبح
خب اینکه اسمش متغیر پابلیک نیست :) یک خاصیت (property) میشه. توو ++C ظاهرا property نداریم ولی در مفهوم، میشه از این قابلیت استفاده کرد:


class Test
{
int xxx;

void set_xxx (int _xxx)
{
xxx = _xxx;
}

public:
int get_xxx ()
{
return xxx;
}
};
و کاربردش هم اینجوریه:


int main ()
{
Test ttt;
int x = ttt.get_xxx ();
ttt.set_xxx (5); //ERROR!
}