Thursday 15 January 2015

Are there "Type-unsafe" function parameters in c# and how could we make one? -


  सार्वजनिक सूची & lt; string & gt; विशेषताएं = नई सूची & lt; स्ट्रिंग & gt; (); सार्वजनिक शून्य जोड़ें (स्ट्रिंग कुंजी, स्ट्रिंग मान) {if (value.ToString ()! = "") {Attributes.Add (key + "= \" "+ value +" \ ""); }} सार्वजनिक शून्य जोड़ें (स्ट्रिंग कुंजी, इंट वैल्यू) {if (value.ToString ()! = "") {Attributes.Add (key + "= \" "+ value +" \ ""); }}  

अतः, दो जोड़ कार्यों के बजाय, क्या हम सिर्फ एक ही कर सकते हैं? उदाहरण के लिए

  सार्वजनिक शून्य जोड़ें (स्ट्रिंग कुंजी, & lt; var & gt; मान) {if (value.ToString ()! = "") {Attributes.Add (key + "= \" " + मान + "\" "); }}  

ध्यान दें कि इस मामले में, आपके फ़ंक्शन का पूर्णांक संस्करण होना चाहिए सूची में शामिल करने के लिए वैसे भी एक स्ट्रिंग में कनवर्ट किया गया। इसलिए यदि आपकी पूरी समस्या वास्तव में बताई गई है, तो आपको केवल अपने फ़ंक्शन के स्ट्रिंग संस्करण की आवश्यकता है और इसे इस पर कॉल कर सकते हैं:

  int SomeValue = 42; स्ट्रिंग SomeName = "जीवन को उत्तर, ब्रह्मांड और सब कुछ"; जोड़ें (कुछनाम, SomeValue.ToString ());  

लेकिन यदि आप अधिक सामान्य समस्या के बारे में पूछ रहे हैं, तो आप इस तरह से वस्तु प्रकार का उपयोग कर सकते हैं:

  सार्वजनिक शून्य जोड़ें (स्ट्रिंग कुंजी, ऑब्जेक्ट मान) {if (value! = Null) {attributes.Add (key + "= \" "+ value.ToString () +" \ ""); }}  

या इससे भी बेहतर, बस स्ट्रिंग का उपयोग करें। फ़ॉर्मैट:

  स्ट्रिंग.फ़ॉर्मेट ("{0} = \" {1} \ "" , कुछनाम, कुछ वैल्यू);  

No comments:

Post a Comment