मुझे टेम्पलेट टेम्पलेट्स और पैरामीटर कटौती के साथ कोई समस्या है। कोड यह रहा:टेम्पलेट टेम्पलेट फ़ंक्शन और पैरामीटर कटौती
template<typename U, template<typename> class T>
void test(T<U>&& t)
{
...
}
मैं इस या तो lvalues और rvalues स्वीकार करने के लिए उम्मीद है, लेकिन केवल rvalues साथ काम करता है। ढहने वाला नियम "टी & & & = टी &" इस मामले में लागू नहीं होता है?
स्वाभाविक रूप से मैं भी lvalue संदर्भ फ़ंक्शन घोषित कर सकता हूं, लेकिन कोड को कम पठनीय बनाता है।
यदि आप पूछ रहे हैं कि मुझे इसकी आवश्यकता क्यों है, तो यह जांचने के लिए एक static_assert का उपयोग करना है कि टी एक विशेष श्रेणी है। यदि ऐसा करने का एक आसान तरीका है तो मुझे अपना कोड बदलने में खुशी होगी, लेकिन मैं जानना चाहता हूं कि इस तरह टेम्पलेट टेम्पलेट उपयोग योग्य हैं या नहीं।
धन्यवाद