PDA

View Full Version : سوال: درك بهتر مفهوم متغييرها



rahe behtari hast
سه شنبه 07 آذر 1391, 13:23 عصر
سوال اول:

***يكم ميخوام مفهوم متغييرها رو دقيق تر بدونم. ما در سي شارپ يك سري متغيير داريم مثل:


int
string
char
bool
...
در عين حال چيزهايي داريم مثل:


array[]A
List<>A
table<>A
IEnumerable<>A

آيا ميشه اين طور گفت كه ما چند مدل متغيير داريم كه توسط چند مورد گفته شده ميشه به هم وصلشون كرد؟
غير از اون چهار مورد (آرايه- ليست- تيبل و...) باز هم از اين مدل هست كه متغييرها رو به هم وصل كنه؟

***تفاوت ليست و آرايه و تيبل و... چيه؟


***وقتي ما يك ليست از يك كلاس درست ميكنيم مفهومش چيه؟
هر كلاس يك سري پروپرتي داره وقتي ما از اون كلاس نمونه گيري ميكنيم در واقع يك متغيير ميسازيم كه داخل اون متغيير يك سري متغيير معادل اون پروپرتيها وجود داره؟ ميشه گفت نمونه اي كه از يك كلاس گرفته ميشه خودش يك مجموعه از متغييرهاست؟


***چي ميشه كه وقتي ميخوايم يك مثلا آرايه يا ليست يا كلاس درست كنيم نمونه گيري ميكنيم اما وقتي ميخوايم يك متغيير ساده تعريف ميكنيم ديگه نمونه گيري نميكنيم؟ به طور مثال:



int a
List <class> aA
List <class> a=new List<class>()A



اين سه تا با هم چه فرقي ميكنن؟ نيمه ي سمت چپ كه داره يك متغيير تعريف ميكنه. نيمه ي سمت راست چه كاري انجام ميده؟


***ضمنا ما وقتي ميخواهيم مختصات مشخص كنيم يا رنگ مشخص كنيم يك متغيير خاص نمونه گيري ميكنيم كه نميفههم چيه؟ مثل:

Color x=new Color()A

r_s1389@yahoo.com
سه شنبه 07 آذر 1391, 14:32 عصر
اول در پاسخ به سوالتون این رو بگم که تمام اون چیزهایی را که میگم به ما اینجوری گفتن و فهمیدم
1 : وقتی ما داریم یک متغییر از هر نوعی درست میکنیم در واقع داریم یک x رو از آبجکت ایجاد می کنیم یعنی این که من میخوام x رو داشته باشم خوب باید دارای یک نوعی باشه درسته من به اون نوع int یا ...... میگم که میشه گفت کلاس ( int , string , .... ) هستند
2: آرایه : در واقع آرایه در سی شارپ به وجود آمده ببین:
int x خوب ایکس دارای یک خونه از حافظه است
int x [10] خوب این یعنی در واقع 10 تا از همون x بالا ولی پشت سر هم اما
int[] x = new int[10] این یعنی آرایه

rahe behtari hast
سه شنبه 07 آذر 1391, 14:40 عصر
خب 10 تا متغيير پشت سره هم با آرايه چه فرقي ميكنه؟

int[]a

و

int[]a=new int[]J

چه فرقي ميكنن؟

لطفا دوستان هر 5 تا سوال كه مشخص شده رو جواب بدن
ممنون

r_s1389@yahoo.com
سه شنبه 07 آذر 1391, 14:42 عصر
***وقتي ما يك ليست از يك كلاس درست ميكنيم مفهومش چيه؟
یعنی این که ما من یک لیست دارم که نوعش از همون کلاسه
مثال : من یک کلاس دارم به نام student که دارای دو تا فیلد به نام شماره دانشجویی و نام است من در مثالم از آرایه استفاده کردم مفهومش یکی است

Student[] stu = new Student[10];
کد بالا به این معنی نیست که من مشخصات 10 دانشجو را در داخلش دارم نه غلطه من در واقع یک آرایه دارم که نوعش از نوع student است که میتونه آرایه من از نوع int , string , list,.......... باشه
من هنوز یک نوع از student نساختم ( student s=new student )این کد را هم ببین

Student[] stu = new Student[10];
for (int i = 0; i < 10; i++)
{
stu[i]=st new Student();
}

r_s1389@yahoo.com
سه شنبه 07 آذر 1391, 14:47 عصر
خب 10 تا متغيير پشت سره هم با آرايه چه فرقي ميكنه؟

int[]a

و

int[]a=new int[]J

چه فرقي ميكنن؟

لطفا دوستان هر 5 تا سوال كه مشخص شده رو جواب بدن
ممنون

int a[];
نوع این ایکس int است اما

int[] x = new int[10];
نوع این ایکس
int [] است

r_s1389@yahoo.com
سه شنبه 07 آذر 1391, 14:53 عصر
[COLOR=red]ضمنا ما وقتي ميخواهيم مختصات مشخص كنيم يا رنگ مشخص كنيم يك متغيير خاص نمونه گيري ميكنيم كه نميفههم چيه؟ مثل:[/RIGHT]

Color x=new Color()A
[/QUOTE]
خوب ما با این کار داریم یک شی از کلاس color درست میکنیم تا بتونیم از متد ها و فیلد های اون استفاده کنیم

r_s1389@yahoo.com
سه شنبه 07 آذر 1391, 14:56 عصر
ببینید به نظر من شما در واق مفهوم oop را نمیدونید برای حل این مشکل یک سری به این لینک بزنید و در اونجا تمامی فیلم های اموزشی را دانلود کنید قشنگ توضیح داده شده به سوال های شما
http://barnamenevis.org/showthread.php?366166-%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D8%AA%D8%B5%D9%88%DB%8C%D8%B1%DB%8C-C&highlight=%D8%A2%D9%85%D9%88%D8%B2%D8%B4+%D8%AA%D8 %B5%D9%88%DB%8C%D8%B1%DB%8C+%D8%B3%DB%8C+%D8%B4%D8 %A7%D8%B1%D9%BE