PDA

View Full Version : New و چندریختی



hi.alir
سه شنبه 28 تیر 1390, 04:45 صبح
کد زیر رو فرض کنید


class DownClass
{
// some functions
};

class UpClass : public DownClass
{
// some functions
};

DownClass * inst = new UpClass(...);


تو خط آخر عملگر new ی کدوم class صدا زده میشه؟ UpClass::new یا DownClass::new ؟

حامد مصافی
سه شنبه 28 تیر 1390, 11:37 صبح
ابتدا سازنده کلاس UpClass فراخوانی می‌شود که آن نیز قبل از اجرا سازنده کلاس DownClass را فراخوانی می‌کند البته به شرطی که برنامه نویس سازنده پایه را بر پایه سازنده والد اعلان کرده باشد