सबसे पहले, मेरे प्रश्न के बजाय मजेदार नाम बहाना। मैं कोई देशी वक्ता नहीं हूं और इन कुछ पात्रों में मेरे विचार व्यक्त करने में मुझे 10 मिनट लग गए।शब्दकोश सीमित संख्या के प्रकार
जो मैं करने की कोशिश कर रहा हूं वह सी # में एक शब्दकोश बनाना है जो मान को int
, string
या bool
होने की अनुमति देता है। मेरे दिमाग में जो पहले आया था वह जेनेरिक का उपयोग कर रहा था, लेकिन जहां तक मुझे पता है, मैं केवल एक प्रकार को संभावित मूल्य-प्रकार के रूप में परिभाषित कर सकता हूं, न कि "उनमें से एक बनें"। object
का उपयोग करना भी संभव होगा, लेकिन मुक्केबाजी काफी प्रदर्शन-हत्यारा प्रतीत होता है।
क्या ऐसा करने का कोई तरीका है?
यहाँ क्या मेरे मन में आया है का एक नमूना है:
Dictionary<string, (string, int, bool)> foo = new Dictionary<string, (string, int, bool)>();
foo.Add("key1", "Hello, World!"); //Correct - Value is a string
foo.Add("key2", 37); //Correct - Value is an int
foo.Add("key3", true); //Correct - Value is a boolean
foo.Add("key4", new Foobar()); //Compiler error - Value is a Foobar
मेरे अंतिम लक्ष्य अन्य डेवलपर्स के लिए एक पुस्तकालय प्रदान करना है। इस सुविधा को उन्हें रनटाइम के दौरान "चर" परिभाषित करने और उन्हें एक प्रकार देने में सक्षम होना चाहिए।
संपादित करें: // फ़ायरफ़ॉक्स 'के बारे में: पेज config प्राप्त करने के लिए कुछ बहुत मैं क्या चाहते हैं उसके पास है
मैंने आपका शीर्षक संपादित किया है। कृपया देखें, "[प्रश्नों में उनके शीर्षक में" टैग "शामिल होना चाहिए?] (Http://meta.stackexchange.com/questions/19190/)", जहां आम सहमति है "नहीं, उन्हें नहीं करना चाहिए"। –
बहुत बहुत धन्यवाद। मैंने इसे अक्सर देखा है और सोचा कि यह सामान्य अभ्यास था। –
कृपया टिप्पणी में शामिल लिंक को पढ़ें। यह एक अच्छा अभ्यास नहीं है, और जब मैं इसे देखता हूं तो मैं इसे ठीक करता हूं। –