क्या एक के बजाय मूल्यों की एक श्रृंखला के आधार पर टेम्पलेट विशेषज्ञता रखने का कोई तरीका है? मुझे पता है कि निम्न कोड वैध C++ कोड मान्य नहीं है लेकिन यह दिखाता है कि मैं क्या करना चाहता हूं। मैं 8-बिट मशीन के लिए कोड लिख रहा हूं, इसलिए इन्स और वर्णों का उपयोग करने के लिए गति में अंतर है।मैं पूर्णांक मानों की एक श्रृंखला के लिए सी ++ टेम्पलेट का विशेषज्ञ कैसे बना सकता हूं?
template<unsigned SIZE>
class circular_buffer {
unsigned char buffer[SIZE];
unsigned int head; // index
unsigned int tail; // index
};
template<unsigned SIZE <= 256>
class circular_buffer {
unsigned char buffer[SIZE];
unsigned char head; // index
unsigned char tail; // index
};
मुझे कहना है, यह उपयोगी है। – chris
'std :: conditional' जैसी विशेषता आपके लिखने के लिए तुच्छ है, इसलिए यदि आपके पास यह नहीं है तो आपको वास्तव में किसी भी पुस्तकालय की आवश्यकता नहीं है:' टेम्पलेट <बूल, टाइपनाम टी, टाइपनाम> स्ट्रक्चर सशर्त {typedef टी प्रकार; }; टेम्पलेट <टाइपनाम टी, टाइपनाम यू> स्ट्रक्चर सशर्त {टाइपपीफ यू टाइप; }; ' –
चीयर्स @ केरेक एसबी, मैंने इसे उत्तर में जोड़ा। – jrok