هذه المقالة عبارة عن مثال مفصل عرضًا لتعديل الوظائف الظاهرية في C ++. آمل أنه من خلال إدخال محرر قناة التكنولوجيا الجديدة الخاطئة ، يمكننا فهم كيفية استخدامه تمامًا. يمكن للأصدقاء المحتاجين الرجوع إلى ما يلي.
شرح مفصل لمثيل الوظيفة الظاهرية المعدلة في C ++
【1】 البرنامج 1
#include <IoStream> باستخدام مساحة الاسم std ؛ class base {public: virt void print () const = 0 ؛} ؛ اختبار الفئة: قاعدة عامة {public: void print () ؛} ؛ // خطأ التجميع! // pchild-> print () ؛}【2】 البرنامج 2
#include <IoStream> باستخدام مساحة الاسم std ؛ class base {public: virt void print () const = 0 ؛} ؛ اختبار الفئة: قاعدة عامة {public: void print () ؛ void print () const ؛} ؛ اختبار void :: print () {cout << pChild-> print () ؛}/*test :: print () const*/【3】 البرنامج 3
#include <IoStream> باستخدام مساحة الاسم std ؛ class base {public: virt void print () const = 0 ؛} ؛ اختبار الفئة: قاعدة عامة {public: void print () ؛ void print () const ؛} ؛ اختبار void :: print () {cout << pChild-> print () ؛ اختبار const obj ؛ obj.print () ؛ اختبار OBJ1 ؛ OBJ1.PRINT () ؛ اختبار* pown = اختبار جديد () ؛ pown-> print () ؛}/*test :: print () consttest :: print () consttest :: print () consttest :: print () test :: print ()*/ملاحظة: كل شيء في الكود.
ملخص: const تعديل وظائف الأعضاء ، والتي تنتمي أيضًا إلى فئة من التحميل الزائد للوظائف.
شكرًا لك على قراءة التفسير التفصيلي لمثال العرض التوضيحي لتعديل الوظائف الافتراضية في C ++. آمل أن تساعدك. في الوقت نفسه ، أود أن أشكرك على دعمك من قناة التكنولوجيا الجديدة الصحيح أو الخطأ!