ورود

نسخه کامل مشاهده نسخه کامل : کلاس Complex



sin2x=2sinxcosx
07-04-2009, 14:29
سلام . من براي نوشتن کلاس Complex دچار مشکل شده بودم . مشکل من اين بود که مي خواستم داده هاي عضو دو تا شي از يک کلاس رو با هم جمع کنم . يکي به من پيشنهاد داد که دو متغير اشاره گر به کلاس رو به توابع جمع و تفريقم پاس کنم . ( همين کد اولي که گذاشتم .‌ )
بعد من متوجه شدم که ميشه اين برنامه رو بدون اشاره گرها هم نوشت . نوشتم جوابش هم دقيقا مثل قبلي بود . ميخواستم بدونم چه فرقي دارن اين دو تا کد ؟ کدوم يکي مزيت داره ؟


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید



کد خودم :

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

:20: :40:

CppBuilder2006
07-04-2009, 19:11
در کل فرقی ندارن فقط برنامه شما باید حجم زیادی تری از حافظه رو با پارامتر انتقال بده که این مشکل رو هم خیلی راحت میشه حل کرد!

sin2x=2sinxcosx
07-04-2009, 21:36
مرسي .
ضمنا ببخشيد يادم رفت بپرسم اينکه چه اصراريه از تخصيص حافظه پويا استفاده بشه ؟ اگه باز هم با معادل فارسي مشکل دارين :31: همون عملگر New رو عرض مي کنم .

CppBuilder2006
08-04-2009, 06:57
new
از heap حافظه می گیره
در

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
حافظه از stack گرفته میشه و در ضمن x باید ثابت باشه
ولی با

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
x متغیر هم می تونه باشه برای همین به اون پویا گفته می شه (البته فکر می کنم این علتش باشه)

sin2x=2sinxcosx
08-04-2009, 09:07
مي دونم . ميگم تو اين برنامه که اصلا فرقي ندارن ؟
new فکر کنم اون موقع لازمه که بخواي مثلا سايز يه آرايه رو کاربر وارد کنه و بعد تو با اين مقدار آرايتو تعريف کني .

CppBuilder2006
08-04-2009, 12:26
مي دونم . ميگم تو اين برنامه که اصلا فرقي ندارن ؟


خب نه توي اين برنامه نيازي نيست!

sin2x=2sinxcosx
09-04-2009, 18:56
خيلي ممنون که هميشه به داد بنده مي رسيد .
ان شاءالله که هميشه موفق باشين .