C++ के लिए एक वैकल्पिक पैरामीटर बनाओ, तो आप एक पैरामीटर ऐसा वैकल्पिक बना सकते हैं:एक सरणी एक C++ समारोह
void myFunction(int myVar = 0);
तुम कैसे एक सरणी के साथ कि क्या करते हैं?
void myFunction(int myArray[] = /*What do I put here?*/);
C++ के लिए एक वैकल्पिक पैरामीटर बनाओ, तो आप एक पैरामीटर ऐसा वैकल्पिक बना सकते हैं:एक सरणी एक C++ समारोह
void myFunction(int myVar = 0);
तुम कैसे एक सरणी के साथ कि क्या करते हैं?
void myFunction(int myArray[] = /*What do I put here?*/);
डिफ़ॉल्ट तर्क में स्थिर संबंध होना चाहिए (उदा। वैश्विक होना)।
#include <iostream>
int array[] = {100, 1, 2, 3};
void myFunction(int myArray[] = array)
{
std::cout << "First value of array is: " << myArray[0] << std::endl;
// Note that you cannot determine the length of myArray!
}
int main()
{
myFunction();
return 0;
}
आप एक वैश्विक स्थिरांक सरणी के लिए एक nullptr
या एक सूचक का उपयोग डिफ़ॉल्ट मान को निरूपित करने के कर सकते हैं::
void myFunction(int myArray[] = nullptr) {
// ^^^^^^^
}
इसका कारण यह है int myArray[]
एक int*
सूचक जब करने के लिए समायोजित प्रकार है यहाँ एक उदाहरण है फ़ंक्शन पैरामीटर के रूप में उपयोग किया जाता है।
आप 'int myArrayDefault [] = {1,2,3} जैसे कुछ कर सकते हैं; शून्य myFunction (int * myArray = myArrayDefault); ' –
ध्यान दें कि परिभाषा 'शून्य myFunction (int * myArray)' से अलग नहीं है। आप एक सरणी पारित नहीं कर रहे हैं। – PaulMcKenzie
सी ++ में, एक सरणी वास्तव में पैरामीटर नहीं हो सकती है। आप तत्व के लिए सूचक, सरणी के संदर्भ, या सरणी के लिए सूचक हो सकता है। लेकिन एक सरणी नहीं है। – juanchopanza