क्या किसी फ़ंक्शन के तर्क के रूप में पारित होने पर सरणी के आकार को प्रतिबंधित करने के लिए वैसे भी है?किसी फ़ंक्शन पर पास होने पर सरणी के आकार को प्रतिबंधित करना
मेरा मतलब है इस की तरह कुछ है?
/*following will lead to compile time error */
template<typename T, size_t n>=20> // or template<typename T,size_t n<=20>
void func(T (&a)[n])
{
// do something with a
}
मैं अपने सरणी के आकार में कम से कम (या अधिक से अधिक) n
होना चाहते हैं (एन किसी भी मूल्य हो सकता है)।
उदाहरण के लिए:
जब n=20
मैं कम से कम (या अधिक से अधिक) 20 तत्वों के साथ एक सरणी से गुजरना होगा। क्या इसके लिए सी ++ में कोई रास्ता है?
यदि सरणी सही आकार नहीं है तो आप क्या व्यवहार चाहते हैं? –
@Neil: संकलन त्रुटि। –