Friday, 15 August 2014

C++ call function with reference to array of const integers -


बताएं कि मेरे पास इन दो फ़ंक्शन परिभाषाएं हैं:

  int * first (int const & Amp; सरणी) [], int const आकार); शून्य द्वितीय (इंट कंस्ट्रैक सरणी [], इंट कॉस्ट आकार);  

और दूसरे के कार्यान्वयन में मैं पहली बार ऐसा कॉल करना चाहता हूं:

  शून्य से दूसरा (int const array [], int const आकार ) {Int * something = पहले (* सरणी, आकार); }  

जब कंपाइलर मुझसे कहता है: "कॉल करने के लिए 'पहले' के लिए कोई मेल नहीं खाती फंक्शन"। इस मामले में दूसरे से पहले कॉल करने का सही तरीका क्या है?

यदि आप वास्तव में सरणियों का उपयोग करना चाहते हैं , मैं std :: array का उपयोग करने का सुझाव देता हूं:

  #include & lt; सरणी & gt; टेम्पलेट & lt; size_t N & gt; Int प्रथम (std :: सरणी & lt; int, N & gt; कंट & amp; सरणी); टेम्पलेट & lt; size_t N & gt; शून्य दूसरा (std :: सरणी & lt; int, N & gt; कंट & amp; सरणी) {int something = पहले (सरणी); } Int main () {std :: arrays & lt; int, 3 & gt; ए = {1,2,3}; दूसरा (क); }  

यदि आपके पास गतिशील आकार के साथ एक सरणी है, तो मैन्युअल रूप से सरणी को प्रबंधित करने और std :: vector का उपयोग करने के बोझ से खुद को मुक्त करें।


No comments:

Post a Comment