c++ - Problem with template specialization and template template parameters -


मेरे पास एक वर्ग हैल्पर :

  टेम्पलेट & lt; टाइपनाम टी, टेम्पलेट & lt; typename & gt; ई & gt; वर्ग सहायक {...};  

मेरे पास एक और क्लास टेम्प्लेट है, एक्स्पोज़र , जो कि सहायक से प्राप्त होता है जब टेम्प्लेट टेम्पलेट पैरामीटर के रूप में खुद को पास करते हुए । मुझे एक्सपोजर के विशेषज्ञ की भी आवश्यकता है इस प्रकार मैं निम्नलिखित की तरह कुछ लिखना चाहता हूं:

  टेम्पलेट & lt; & gt; कक्षा एक्सपोजर & lt; int & gt; : सार्वजनिक हेल्पर & lt; int, एक्सपोजर & gt; {एक्सपोजर (): हेल्पर & lt; int, एक्सपोज़र & gt; () {...}; ...};  

दुर्भाग्य से यह संकलन नहीं करेगा। जीसीसी शिकायत करता है:

एक्सपोज़र। H: 170: `टेम्प्लेट> क्लास एक्सपोज़रहेल्पर 'के लिए टेम्प्लेट पैरामीटर सूची में तर्क 2 पर टाइप / वेल्यूमेल टाइप करें।

Exposure.h : 170: त्रुटि: एक स्थिर प्रकार की अपेक्षा '', 'एक्सपोजर' मिला

क्या मैं कुछ गलत कर रहा हूं? क्या मैं करने की कोशिश कर रहा हूं?

अगर आप वास्तव में टेम्पलेट बल्कि वर्ग

  टेम्पलेट & lt; typename टी, टेम्पलेट & lt; typename & gt; कक्षा ई & gt; वर्ग सहायक {}; टेम्पलेट & lt; typename T & gt; कक्षा एक्सपोजर; टेम्पलेट & lt; & gt; कक्षा एक्सपोजर & lt; int & gt; : सार्वजनिक हेल्पर & lt; int, एक्सपोजर & gt; {};  

या यदि आपकी मंशा अलग है

  टेम्पलेट & lt; typename T, typename E & gt; वर्ग सहायक {}; टेम्पलेट & lt; typename T & gt; कक्षा एक्सपोजर; टेम्पलेट & lt; & gt; कक्षा एक्सपोजर & lt; int & gt; : सार्वजनिक हेल्पर और लेफ्टिनेंट; इंट, एक्स्पोज़र & लेफ्टिनेंट; इंट & gt; & Gt; {};  

Comments