معالجة الأخطاء والسلامة
اكتب تعليمات برمجية قوية لـ C++ مع معالجة مناسبة للأخطاء — الاستثناءات، وضمانات أمان RAII، وأنواع المجموع، وأنماط البرمجة الدفاعية.
الاستثناءات واستراتيجيات الخطأ
الاستثناءات: رمي، حاول، قبض
فهم آلية استثناء C++ - تفكيك المكدس، والتسلسل الهرمي للاستثناءات القياسية، والاستثناءات المخصصة، ومتى تفضل الاستثناءات على رموز الخطأ.
Exception Safety Guarantees
Learn the three levels of exception safety — basic, strong, and no-throw — and how RAII and copy-and-swap provide them.
استراتيجيات معالجة الأخطاء: اختيار النهج الصحيح
قارن بين الاستثناءات وأكواد الأخطاء وstd::expected - تعرف على متى يكون كل نهج مناسبًا وكيفية التعامل مع الأخطاء في المنشئات والمدمرات والتعليمات البرمجية متعددة الخيوط.
اكتب السلامة والبرمجة الدفاعية
std::اختياري، std::variant & std::متوقع
Use C++17/23 sum types to represent nullable values, type-safe unions, and value-or-error returns — eliminating entire classes of bugs at compile time.
Type Safety, Assertions & Contracts
Leverage the C++ type system to prevent bugs at compile time — strong enums, the newtype pattern, static_assert, runtime assertions, and the upcoming contracts feature.
فهم وتجنب السلوك غير المحدد
تعرف على السلوك غير المحدد، وسبب وجوده، وكيف يستغله المترجمون للتحسين، وكيفية اكتشافه باستخدام المطهرات وتحذيرات المترجمين.