نموذج البرمجة الشيئية سائد في جميع الأدوات واللغات الحديثة لإنشاء البرامج. معيار الصناعة اليوم هو لغة البرمجة الشيئية C ++. يمكنك إنشاء مثيل لفئة في C ++ بعدة طرق مختلفة.
انه ضروري
مترجم C ++
تعليمات
الخطوة 1
قم بتجسيد الفئة كمتغير تلقائي في النطاق المحلي المحدد بواسطة دالة أو طريقة فئة أو كتلة عبارة. استخدم تعريفًا تعريفيًا أو إلزاميًا لكائن فئة في موقع محدد في برنامجك. إذا لزم الأمر ، قم بإجراء استدعاء صريح لأي مُنشئ باستخدام معلمات. قم بإنشاء كائن باستخدام رمز مشابه لما يلي: void CMyClass:: SomeMethod () {COtherClass oSomeObject1؛ // إنشاء كائن باستخدام المُنشئ الافتراضي COtherClass oSomeObject2 (1980، "Victor V. Vakchturov")؛ // إنشاء كائن باستخدام مُنشئ مع معلمات} يتم تخصيص الذاكرة لكائنات الفئات التي تم إنشاؤها بطريقة مماثلة ، كما هو الحال مع أي متغيرات تلقائية أخرى ، في المكدس. لذلك ، عند الخروج من النطاق وإزالة إطار المكدس ، سيتم تدمير الكائن (مع استدعاء المدمر).
الخطوة 2
قم بإنشاء مثيل للفئة في الكومة باستخدام عامل التشغيل الجديد. تحديد متغير من نوع المؤشر إلى كائنات من الفئة ليتم إنشاء مثيل لها. أعطه قيمة نتيجة تقييم عامل التشغيل الجديد. اتصل بالمنشئ المناسب. استخدم مقتطف رمز مشابه لما يلي: CSomeClass * poSomeObject؛ // تعريف مؤشر إلى كائنات من الفئة CSomeClasspoSomeObject = new CSomeClass ؛ // إنشاء كائن من فئة CSomeClass * poSomeObject_2 = جديد CSomeClass (111 ، "3V") ؛ // الإنشاء باستدعاء المنشئ باستخدام المعلمات عند إنشاء كائنات بهذه الطريقة ، يتم استخدام آلية تخصيص الذاكرة المحددة بواسطة المشغل الجديد (إذا لم يتم تجاوزها ولم يتم تعيين وظيفة التخصيص الخاصة بها) ، وبالتالي فإن عنوان كائن جديد غير معروف مسبقًا. يجب حذف جميع الكائنات التي تم إنشاؤها بهذه الطريقة بشكل صريح باستخدام عامل الحذف.
الخطوه 3
قم بإنشاء مثيل للفئة باستخدام عامل التشغيل الجديد على جزء من الذاكرة المخصصة ذاتيًا. استخدم رمزًا مشابهًا لما يلي: void * p0 = malloc (sizeof (CSomeClass))؛ // فراغ تخصيص الذاكرة * p1 = malloc (sizeof (CSomeClass)) ؛ // تخصيص الذاكرة الجديد (p0) CSomeClass ؛ // تهيئة الكائن على الذاكرة المخصصة (المُنشئ الافتراضي) new (p1) CSomeClass (111 ، "abc") ؛ // تهيئة الكائن (المُنشئ مع المعلمات) قبل إتلاف الكائنات التي تم إنشاؤها بواسطة هذه الطريقة ، يجب عليك استدعاء أداة التدمير الخاصة بها صراحة: ((CSomeClass *) p0) -> ~ () ؛ يتم استخدام إنشاء الكائنات بهذه الطريقة بشكل أساسي في فئات حاوية القوالب من مكتبات مختلفة (مثل STL).