بيت التمويل الشخصي C ++ البرمجة: متى تكون الدالة الظاهرية لا؟ - الدمى

C ++ البرمجة: متى تكون الدالة الظاهرية لا؟ - الدمى

فيديو: Tesla Model S driver caught sleeping at the wheel while on Autopilot 2025

فيديو: Tesla Model S driver caught sleeping at the wheel while on Autopilot 2025
Anonim

في C ++، فقط لأنك تعتقد أن استدعاء وظيفة معينة لا بد أن يكون متأخرا لا يعني أنه. إذا لم يتم الإعلان عن نفس الحجج في الفئات الفرعية، لا يتم تجاوز مهام العضو بشكل متعدد الأشكال، سواء تم إعلانها الظاهرية أم لا.

استثناء واحد لقاعدة إعلان متطابقة هو أنه إذا كان العضو يعمل في فئة الأساس بإرجاع مؤشر أو مرجع إلى كائن فئة أساسية قد ترجع دالة عضو تم تجاوزه في فئة فرعية مؤشر أو مرجع إلى كائن الفئة الفرعية. وبعبارة أخرى، فإن وظيفة ميكاكوبي () متعددة الأشكال، على الرغم من أن نوع إرجاع الدالتين يختلفان:

كلاس بيس {بوبليك: // ريتورن a كوبي أوف ذي كيرنت أوبجيكت بيس * ميكيكوبي ()؛}؛ كلاس الفئة الفرعية: بوبليك بيس {بوبليك: // ريتورن a كوبي أوف ذي كيرنت أوبجيكت سوبكلاس * ماكيكوبي ()؛}؛ فواد فن (بيس & بك) {بيس * بكوبي = بك. اعمل نسخة()؛ // بروسيد أون …}

في الواقع العملي، هذا أمر طبيعي تماما. يجب أن تقوم الدالة ميكيكوبي () بإرجاع كائن من النوع سوبكلاس ، على الرغم من أنها قد تتجاوز باسكلاس:: ميكاكوبي () .

هذا العمل من اتخاذ قرار بصمت عندما يتم تجاوز وظيفة وعندما لا يكون مصدر خطأ في C ++؛ لدرجة أن معيار 2011 قدم واصف تجاوز أن المبرمج يمكن استخدامها للإشارة إلى نيتها لتجاوز وظيفة فئة الأساس.

يولد C ++ خطأ في برنامج التحويل البرمجي إذا تم إلغاء وظيفة ما، ولكن لا يؤدي في الواقع إلى تجاوز وظيفة فئة أساسية لسبب ما (مثل الوسيطة غير المتطابقة) كما في المثال التالي: >

كلاس ستودنت {بوبليك: فيرتوال فواد أدكورسغريد (دوبل غريد)؛}؛ كلاس غرادستودنت: بوبليك ستودنت {بوبليك: فيرتوال فواد أدكورسغريد (فلوت غريد) أوفيرد؛}؛
هذا المقتطف يولد خطأ وقت تجميع لأن الأسلوب غرادستودنت:: أدكورسغريد (تعويم) أعلن تجاوز لكنه لا، في الواقع، تجاوز وظيفة الطبقة الأساسية الطالب:: أدكورسغريد (مزدوج) لأن أنواع الوسيطة دون ' ر المباراة.

يمكن للمبرمج أيضا أن يعلن عن وظيفة لا يمكن تجاوزها باستخدام الكلمة الرئيسية

النهائية ، حتى لو تجاوزت هذه الوظيفة نفسها بعض وظائف الطبقة الأساسية السابقة، كما هو موضح في ما يلي > بوستدوك الصف: كلاس غرادستودنت: بوبليك ستودنت {بوبليك: فيرتوال فواد أدكورسغريد (دوبل غريد) فينال؛}؛ كلاس بوستدوك: بوبليك غرادستودنت {بوبليك: فيرتوال فواد أدكورسغريد (دوبل غريد)؛}؛ منذ الطالب:: أدكورسغريد () يتم وضع علامة نهائية

،

إعلان بوستدوك:: أدكورسغريد () يولد خطأ لأنه يحاول تجاوز الطالب الأسلوب.

بالإضافة إلى ذلك، يمكن الإعلان عن فئة كاملة

نهائي:

فئة غرادستودنت فينال: بوبليك ستودنت وهذا يؤثر على أكثر من مجرد الطرق الافتراضية للفئة. لا يمكن أن يكون

نهائي

فئة موروثة من الإطلاق.

C ++ البرمجة: متى تكون الدالة الظاهرية لا؟ - الدمى

اختيار المحرر

الانضمام إلى بينتيريست - الدمى

الانضمام إلى بينتيريست - الدمى

بينتيريست هو بينبوريست على الانترنت، واتخاذ البصرية على الموقع ارتباطك الاجتماعي. في الوقت الحاضر، بينتيريست هو موقع دعوة فقط، على الرغم من المفترض أنها سوف تصبح في نهاية المطاف مفتوحة للتسجيلات العامة. ولكن لا تآكل! الحصول على دعوة والاشتراك هو رن جميلة سهلة. الصفحة الرئيسية بينتيريست. للبدء مع بينتيريست، الخاص بك ...

بينتيريست التسويق آداب - الدمى

بينتيريست التسويق آداب - الدمى

كل الوقت والجهد في العالم قضى التسويق على بينتيريست لا طائل منه إذا كنت تزعج الجميع هناك (أو، والأسوأ من ذلك، يتم الإبلاغ عنها كرسائل غير مرغوب فيها!). على بينتيريست، والتركيز على تقاسم الصور الرائعة والابداع في حين كنت تفعل ذلك.

تثبيت صفحة ويب بدون بينتيريست بين إيت بوتون - داميز

تثبيت صفحة ويب بدون بينتيريست بين إيت بوتون - داميز

دبوس بينتيريست يمكن أن يكون أي شيء البصرية. دبابيس التي هي لافتة للنظر، جميلة، فريدة من نوعها، مضحك، أو مثيرة للاهتمام الحصول على المكرر في كثير من الأحيان. إذا كنت ترغب في مشاركة أو حفظ صورة أو فيديو من شيء ما، تعلق على بينتيريست هو وسيلة رائعة للقيام بذلك. الائتمان: © إستوكفوتو. كوم / زاكوكور عندما تجد صفحة الويب التي ...

اختيار المحرر

مدير عقدة الغزل في Hadoop - الدمى

مدير عقدة الغزل في Hadoop - الدمى

كل عقدة الرقيق في بعد آخر المفاوضين الموارد (غزل) لديها الخفي مدير عقدة ، الذي يعمل كعبد لمدير الموارد. كما هو الحال مع تاسكتراكر، كل عقدة الرقيق لديه خدمة التي تربطه مع خدمة المعالجة (عقدة ماناجر) وخدمة التخزين (داتانود) التي تمكن هادوب أن يكون نظام موزعة. ...

مدير موارد يارن - الدمى

مدير موارد يارن - الدمى

المكون الأساسي ل يارن (بعد مفاوض آخر للموارد) هو مدير الموارد الذي يحكم جميع موارد معالجة البيانات في مجموعة هادوب. ببساطة، مدير الموارد هو جدولة مخصصة التي تعين الموارد لطلب التطبيقات. وتتمثل مهامها الوحيدة في الحفاظ على رؤية عالمية لجميع الموارد في المجموعة، والتعامل مع ...

تتبع جوبتراكر و تاسكتراكر في هادوب 1 - الدمى

تتبع جوبتراكر و تاسكتراكر في هادوب 1 - الدمى

معالجة مابريدوس في هادوب 1 تتم معالجتها بواسطة جوبتراكر و تاسكتراكر الشياطين. يحافظ جوبتراكر على وجهة نظر جميع موارد المعالجة المتاحة في مجموعة هادوب و، كما تأتي طلبات التطبيق، فإنه جداول ونشرها إلى العقد تاسكتراكر للتنفيذ. كما يتم تشغيل التطبيقات، يتلقى جوبتراكر تحديثات الحالة من ...

اختيار المحرر

نشر التطبيق على الأجهزة الجوالة للمؤسسات - الدمى

نشر التطبيق على الأجهزة الجوالة للمؤسسات - الدمى

بعد توفير جهاز جوال للمؤسسات بسياسات الأمان والتهيئات المناسبة ، تحتاج إلى نشر التطبيقات المناسبة إلى الجهاز. في بعض الحالات، كنت تفعل ذلك من أجل ضمان أن يتم تأمين الجهاز بالكامل. على سبيل المثال، قد ترغب في نشر تطبيق لمكافحة البرامج الضارة. في حالات أخرى، فإنه ...

تقييم البنية الأساسية للأمان لتجنب الخارقة - الدمى

تقييم البنية الأساسية للأمان لتجنب الخارقة - الدمى

يمكن أن يؤدي مراجعة البنية الأساسية الأمنية العامة إلى إضافة نظم والحفاظ على تلك المتسللين المستمر في الخليج. وهنا بعض النصائح لبدء هذا التقييم وتكون في طريقك إلى الراحة والأمن: انظروا إلى كيفية تصميم الشبكة والحرم الجامعي بشكل عام. ضع في اعتبارك مسائل تنظيمية، مثل ما إذا كانت السياسات ...

أمان التطبيق على أجهزة أبل يوس للجوال - دمى

أمان التطبيق على أجهزة أبل يوس للجوال - دمى

يستخدم مطوري تطبيقات أجهزة الجوال إمكانية وضع الحماية من أبل يوس وضمان أمن بيانات المستخدم والتأكد من أن تطبيقاتهم لا تشترك البيانات مع تطبيقات أخرى مثبتة على جهاز المستخدم. كل التطبيق لديه حق الوصول إلى الملفات الخاصة بها، والتفضيلات، وموارد الشبكة. كما أضافت الإصدارات الأخيرة من نظام التشغيل يوس ...