आपको टेम्प्लेट तर्कों को सक्षम करने की आवश्यकता है
template <std::string temp>
void f() {
// ...
}
f<"foo">();
f<"bar">(); // different function!?
अब एक निहितार्थ के लिए वर्णों के एक अनूठे अनुक्रम के साथ आने की आवश्यकता होगी std::string, उस मामले के लिए, किसी अन्य मनमाने उपयोगकर्ता परिभाषित वर्ग, एक विशेष मूल्य को संग्रहीत करते हुए, जिसका अर्थ कार्यान्वयन के लिए ज्ञात नहीं है। और इसके अलावा, मनमाने ढंग से वर्ग की वस्तुओं के मूल्य की गणना संकलन समय पर नहीं की जा सकती है।
यह पोस्ट-सी ++ 0x के लिए टेम्पलेट पैरामीटर प्रकारों के रूप में शाब्दिक वर्ग प्रकारों की अनुमति देने पर विचार करने की योजना बनाई गई है, जो निरंतर अभिव्यक्तियों द्वारा प्रारंभ की जाती हैं। उन डेटा सदस्यों को उनके मूल्यों के अनुसार पुनरावर्ती रूप से मंगवाया जा सकता है (आधार कक्षाओं के लिए, उदाहरण के लिए हम गहराई-पहले, बाएं से दाएं ट्रैवर्सल लागू कर सकते हैं)। लेकिन यह निश्चित रूप से मनमाने वर्गों के लिए काम करने वाला नहीं है।