मैं सी ++ में प्रतिबिंब तंत्र को लागू करने पर काम कर रहा हूं। मेरे कोड के भीतर सभी ऑब्जेक्ट ऑब्जेक्ट का एक उप-वर्ग (मेरा स्वयं का सामान्य प्रकार) है जिसमें क्लास के एक स्थिर सदस्य डेटाम होते हैं।कन्स्ट्रक्टर को इंगित करने वाले फ़ंक्शन पॉइंटर को कैसे पास किया जाए?
class Class{
public:
Class(const std::string &n, Object *(*c)());
protected:
std::string name; // Name for subclass
Object *(*create)(); // Pointer to creation function for subclass
};
एक स्थिर कक्षा सदस्य गृहीत साथ वस्तु के किसी भी उपवर्ग के लिए, मुझे लगता है कि उपवर्ग के निर्माता के लिए सूचक के साथ प्रारंभ 'बनाने' के लिए सक्षम होना चाहता हूँ।
हालांकि इस तथ्य के बाद 6 साल है - आप देना चाहिए इस बारे में बहुत सारे विचार हैं कि आप वास्तव में अपने स्वयं के प्रतिबिंब तंत्र को कार्यान्वित करना चाहते हैं या नहीं। सबसे पहले टेम्पलेट्स, टाइप_ट्रेट्स और एसएफआईएनएई सिद्धांत का उपयोग करके संकलन-समय 'प्रतिबिंब' के लिए निपटने पर विचार करें; फिर मौजूदा सी ++ प्रतिबिंब पुस्तकालयों में से एक को आजमाएं; और केवल तभी मैं खुद पर जाने पर विचार करता हूं। – einpoklum