PDA

View Full Version : تعریف شی به تعداد نامحدود توسط کاربر



csharpdoost
چهارشنبه 25 آبان 1390, 10:25 صبح
سلام
میخوام از کلاسی که تعریف شده به تعداد نیاز توسط کاربر شی رو بسازم و یا شی های ایجاد شده را حذف کنم . مثلا توی برنامه دانشگاه کلاس دانشجو به تعداد دلخواه تولید و یا حذف میگردد.

h-rafiee
چهارشنبه 25 آبان 1390, 11:58 صبح
یک کلاس دانشجوی کلی هست اطلاعات فقط از بانک حذف و درج میشن.
کلاس جدیدی ایجاد نمیشه.
وقتی کاربر یک دانشجو رو وارد می کنه اطلاعات دانشجو با در نظر گرفتن کلاس به شی تبدیل میشه و در بانک ذخیره میشه.

csharpdoost
چهارشنبه 25 آبان 1390, 12:09 عصر
من هم سوالم همینه که این شی که با new کردن یک کلاس ایجاد میشه چطوری میشه همین new کردن توسط کاربر انجام بشه و هر شخص جدیدی که ثبت میشه یک شی جدید به اسم همون شخص ایجاد بشه؟ البته بدون بانک اطلاعاتی. چیزی شبیه به ایجاد button توسط کاربر .

h-rafiee
چهارشنبه 25 آبان 1390, 13:19 عصر
کلاس رو باید دربرنامه بنویسی و چیز جدیدی اضافه نمی شه.
می تونی به کتاب هاشمیان قسمت کلاس ها یه سری بزنی ارجاعات رو ببینی چه جوری نوشته میشه

csharpdoost
چهارشنبه 25 آبان 1390, 14:33 عصر
باباجون همه اینارو من میدونم لطفا اگه سوال رو متوجه نمیشید تاپیک نزنید :گریه:. بهتره سوال رو اینجوری مطرح کنم : توسط یه فرم مشخصات مثلا دانشجو از جمله نام و نام خانوادگی و . . . دریافت میشه این مشخصات به کلاس تعریف شده ارجاع داده میشه . حالا باید یک شی به اسم همین دانشجوی جدید ایجاد بشه تا اطلاعات اون رو تا پایان اجرای برنامه حفظ کنه . نمیخوام اطلاعات جایی ذخیره بشه . حالا اگه تعداد دانشجوها مثلا 10 نفر بشه خوب باید 10 تا هم شی به اسم خود دانشجوها ایجاد بشه و اطلاعتشون رو تا پایان برنامه نگهداری کنه که پس از بررسی و مقایسه مشخصاتشون کار تمام میشه. حالا هر بار که مشخصات دانشجو توی فرم وارد میشه و دکمه ثبت زده میشه کد این شی رو چطوری بنویسیم که به اسم خود دانشجو ایجاد بشه ؟

solaleh
چهارشنبه 25 آبان 1390, 15:27 عصر
یک کلاس info تعریف کن(مثلا studentInfo) و توی اون توابع accessor مربوط به دانشجو رو نگه دار(مثل نام،نام خانوادگی،شماره دانشجویی،رشته و...) حالا فقط کافیه هر بار که به قول شما قراره یه obj جدید،new بشه یک info به لیستی از infoها اضافه کنی.(List<StudentInfo> list = new List<StudentInfo>();z) یعنی:
list.Add(info);
که این info قبلا به ازای هر دانشجو پر شده.
اگه سوالی بود بفرمایین البته اگر سوال شما رو متوجه شده باشم :چشمک:

csharpdoost
چهارشنبه 25 آبان 1390, 15:42 عصر
با تشکر با این روش مشکلم حل میشه .
سوال قبلی رو خوب متوجه شده بودی ممنون:چشمک: