संरचना तर्कों के लिए वैकल्पिक तर्क निर्दिष्ट करें

पेज निर्माण की तारीख :

वैकल्पिक तर्क आपतर्क की एक अलग संख्या के साथ एक विधि ओवरलोडिंग के बिना एक तर्क के लिए एक प्रारंभिक मूल्य देने के लिए अनुमति देते हैं ।

हालांकि, केवल "10", "नमूना" और "नल" जैसे स्थिरता को वैकल्पिक तर्क ों के रूप में निर्दिष्ट किया जा सकता है, और आप एक मूल्य निर्दिष्ट नहीं कर सकते जो नए में बनाया गया था या स्थिर पठन द्वारा परिभाषित किया गया था जो कार्यक्रम चलने पर निर्धारित किया जाता है।

यदि संरचना एक तर्क है तो यही सच है । उदाहरण के लिए, यदि प्रकार इंटटर है, तो आप प्रारंभिक मूल्य के रूप में IntPtr.Zero निर्दिष्ट नहीं कर सकते। यह 0 निर्दिष्ट नहीं कर सकता है, और यह शून्य नहीं किया जा सकता है क्योंकि यह एक संरचना है । (Nullable आप को नल निर्दिष्ट करने की अनुमति देता है, लेकिन शामिल नहीं है क्योंकि तर्क के प्रकार बदलता है.)

आप संरचना को वैकल्पिक तर्क के रूप में उपयोग करने के लिए "डिफ़ॉल्ट (टी) का उपयोग कर सकते हैं। यह नए टी () के साथ बनाए गए मूल्य के बराबर है।

public void DoAction(IntPtr handle = default(IntPtr))
{
  // 処理
}

आप संरचना में प्रत्येक मूल्य के लिए केवल 0 या शून्य निर्दिष्ट कर सकते हैं, इसलिए यदि आप अलग से प्रारंभिक मूल्य देना चाहते हैं तो विधि को अधिभारित करें।