PDA

View Full Version : سوال: بررسی تابع Edit / مشکل آرایه



majid.nasirinejad
یک شنبه 24 مرداد 1389, 03:27 صبح
با تشکر از دوستان و دوستی که مسئله ارث بری رو برام هم خوب توضیح داد و هم زحمت کشید و مشکل رو برطرف کرد
یک راهنمایی میخواستم برای حل مشکل تابع Edit در این برنامه پیوست...
همه چیز به خوبی پیش میره ولی نمیدونم چرا تغییرات انجام نمیشه...
یعنی مقدار آرایه ای که قبلا ذخیره شده ، تغییر پیدا نمیکنه...
پیشاپیش از کمک دوستان تشکر می کنم

BeginnerProgrammer
یک شنبه 24 مرداد 1389, 23:16 عصر
سلام
من کد شما رو بررسی کردم اشکال تابع ادیت شما اینه که هر بار کاربر میخواد اطلاعات مربوطه به آی دیه مورد نظرشو ویرایش کنه شما برنامه رو به توابع setA یا setS راهنمایی میکنید و داخل این توابع اطلاعات ویرایش نمیشه بلکه اطلاعات جدید در آرایه v به عنوان داده های جدید وارد میشود نه اینکه جایگزین اطلاعات قبلی شود. پیوست زیر ویرایش شده ی کد شماست .
در کد زیر تغییراتی در توابع set ایجاد شده . در ویرایش شده این توابع دو آرگومان ورودی اضافه شده اولین آرگومان از نوع خود کلاس (call by refrence) است که به این منظور اضافه شده که تابع بداند قرار است تغییرات را روی چندمین آرایه از آرایه های ساخته شده از نوع کلاس در مین برنامه اعمال کند . ( از فراخوانی با ارجاع استفاده شده تا در هنگام ویرایش تغییرات روی کلاس اعمال شود). آرگومان دوم متغییری از نوع استرینگ است که دو مقدار add , edit به آن ارسال میشود. چون شما برای ست کردن و ادیت کردن این تابع رو فراخوانی میکنید و برای ست کردن باید پوش بک رو انجام بدید و برای ادیت کردن جایگزینی اطلاعات پس دو عمل متفاوت انجام میشود که در دو if بررسی شده اند.(کد فرستاده شده را با دقت بررسی کنید)
54274
موفق باشید

majid.nasirinejad
دوشنبه 25 مرداد 1389, 02:43 صبح
سلام
من کد شما رو بررسی کردم اشکال تابع ادیت شما اینه که هر بار کاربر میخواد اطلاعات مربوطه به آی دیه مورد نظرشو ویرایش کنه شما برنامه رو به توابع setA یا setS راهنمایی میکنید و داخل این توابع اطلاعات ویرایش نمیشه بلکه اطلاعات جدید در آرایه v به عنوان داده های جدید وارد میشود نه اینکه جایگزین اطلاعات قبلی شود. پیوست زیر ویرایش شده ی کد شماست .

54274


باز هم تشکر... جدا ازاینکه زحمت ادیت فایل رو می کشید، توضیحات کاملتون راهنمایی خیلی خوبی برای من تازه کار هست... پاینده باشید