13
क्या पैरामीटर पैक के प्रकारों को बदलना और इसे पास करना संभव है?क्या पैरामीटर पैक में प्रकारों को बदलना संभव है?
उदा।
template<class... Args> struct X {};
template<class T> struct make_pointer { typedef T* type; };
template<class T> struct make_pointer<T*> { typedef T* type; };
ताकि निम्नलिखित धारणा रखती है हम एक टेम्पलेट magic
या कुछ इसी तरह परिभाषित कर सकता हूँ: निम्नलिखित दिया
typedef magic<X, make_pointer, int, char>::type A;
typedef X<int*, char*> B;
static_assert(is_same<A, B>::value, ":(");
आह, * §14.5 .3/5 * यहां तक कि उदाहरण भी शामिल हैं जिन्हें मैंने किसी भी तरह से अनदेखा करने में कामयाब रहे :) –