رفتن به محتوا
ماژول 2

‎C++‎ شیءگرا

کلاس‌ها، اشیاء، وراثت، چندریختی و ارکان برنامه‌نویسی شیءگرا (OOP) در ‎C++‎.

کلاس‌ها و اشیاء

  1. کلاس‌ها، ساختارها و کپسوله‌سازی

    درک تفاوت بین struct و class، تعیین‌کننده‌های دسترسی، کپسوله‌سازی، توابع عضو const، اعضای استاتیک و مقداردهی اولیه تجمعی مدرن.

  2. سازنده‌ها، مخرب‌ها و قانون 0/3/5

    بر چرخه حیات کامل اشیاء ‎C++‎ — از ساخت تا تخریب — مسلط شوید و یاد بگیرید چه زمانی توابع عضو ویژه بنویسید (یا ننویسید).

  3. معناشناسی کپی: عمیق در مقابل سطحی

    تفاوت بین کپی سطحی و عمیق، نحوه پیاده‌سازی عملیات کپی صحیح برای کلاس‌های مالک منابع و اصطلاح کپی-و-تعویض را بیاموزید.

وراثت و چندریختی

  1. وراثت و روابط «هست-یک»

    وراثت عمومی، زنجیره‌سازی سازنده‌ها، مشکل برش، وراثت چندگانه و مشکل الماس را بیاموزید — و بدانید چه زمانی وراثت مناسب است.

  2. توابع مجازی، vtableها و چندریختی

    به چندریختی زمان اجرا شیرجه بزنید: نحوه کار ارسال مجازی در پشت صحنه، زمان استفاده از override و final، کلاس‌های انتزاعی و RTTI.

  3. سربارگذاری عملگرها

    نحوه صحیح سربارگذاری عملگرها را بیاموزید — عضو در مقابل غیر عضو، فرم‌های استاندارد، عملگرهای جریان، عملگر فضاپیمای ‎C++‎20 و دام‌های رایج.

طراحی شیءگرا

  1. اعضای استاتیک، تک‌نمونه‌ها و PIMPL

    اعضای استاتیک، الگوی تک‌نمونه مایرز، الگوی کارخانه و اصطلاح PIMPL برای پایداری ABI و عایق‌بندی زمان کامپایل را کاوش کنید.

  2. ترکیب، رابط‌ها و طراحی

    ترکیب بر وراثت، رابط‌های انتزاعی محض، اصول طراحی (ISP، DIP)، std::variant به‌عنوان جایگزین وراثت و پاک‌سازی نوع را تسلط یابید.