PDA

View Full Version : Overload و Override در ++C



saeedIRHA
چهارشنبه 03 خرداد 1385, 07:29 صبح
سلام دوستان،
میشه یکی از دوستان مفهوم Overload و Override شده Class ها رو در
++C برای من توضیح بده؟!؟!
و تفاوت شن چی هست؟!؟!
چون من دقیقاً نمیفهمم که کارشون چی هست و فرقشن چی؟!!
از دوستان ممنون میشه اگر یک مثال هم محبت کنن!
ممنون

reza_rad
چهارشنبه 03 خرداد 1385, 07:38 صبح
در یک توضیح ساده :
Overload ماله وقتیه که شما می خوای یک تابع با یک نام داشته باشی که متغیرهای optional داشته باشه. مثلا یه وقت دوتا Parameter بگیره یه وقت یکی.
اما override یعنی اینکه شما توی یک کلاس بالاتر یک تابع داری که می تونی توی کلاسهایی که از این کلاس ارث می برند اون رو تغییرش بدی . مثلا توی کلاس ماشین شما یک تابع داری که اسمش هست go_fastest و این مثلا با نهایت سرعت ماشین یعنی مثلا 150 حرکت می کنه. ولی همین تابع توی کلاس به ارث برده شده ی ماشین تندرو با همین نام override میشه و با نهایت سرعت مثلا 300 حرکت می کنه.

saeedIRHA
چهارشنبه 03 خرداد 1385, 08:54 صبح
ممنون دوست من،
فقط یک سؤال،
آیا این مسئله در تمام زبان های OOP صادق هست؟!

reza_rad
چهارشنبه 03 خرداد 1385, 09:06 صبح
خواهش می کنم.

بله تمام زبانهای oop همین overload و override رو دارند اما با keyword های خاص خودشان.ولی مفهوم کلی است و همه جا یکی.

saeedIRHA
چهارشنبه 03 خرداد 1385, 10:52 صبح
باز هم متشکرم!