كيف يمكنني تخزين معلومات فئة مشتقة تم الحصول عليها أثناء تهيئة فئة أساسية؟

StackOverflow https://stackoverflow.com//questions/22016200

سؤال

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

giveacodicetagpre.

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

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


ملاحظة : منذ أننا على منصة مضمنة، نحن عالقون مع دول مجلس التعاون الخليجي 4.1.2. بصرامة C ++ 03 (بما في ذلك Tr1)، ولكن لا C ++ 11.

هل كانت مفيدة؟

المحلول

في C ++ 11، قد تفعل شيئا مثل:

giveacodicetagpre.

في C ++ 03، يمكنك تغيير فئة المشتقة إلى شيء مثل:

giveacodicetagpre.

نصائح أخرى

إذا كانت متوفرة على برنامج التحويل البرمجي الخاص بك، يمكنك استخدام منشئ مفوض:

giveacodicetagpre.

مع C ++ 03، يمكنك استخدام الوسيطة الافتراضية:

giveacodicetagpre.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top