आप LanguagePrimitives
मॉड्यूल से कार्यों का उपयोग कर सकते हैं प्राप्त करना चाहते हैं:
// Convert enum value to the underlying char value
let ch = LanguagePrimitives.EnumToValue Suit.Clubs
// Convert the char value back to enum
let suit = LanguagePrimitives.EnumOfValue ch
संपादित करें: मैं अपनी पहली जवाब की कोशिश में इन कार्यों को नहीं देखा है, तो मैं पहली बार उपयोग करते हुए सुझाव दिया:
unbox<char> Suit.Clubs
यह वही है ildjarn एक टिप्पणी में पता चलता है की तुलना में कम है, लेकिन यह एक ही समस्या है - कोई जांच नहीं है कि आप वास्तव में सही प्रकार में परिवर्तित हो रहे हैं। EnumToValue
के साथ, आप यह गलती नहीं कर सकते हैं, क्योंकि यह हमेशा सही अंतर्निहित प्रकार का मान देता है।
स्रोत
2012-01-30 23:59:52
'ch = (बॉक्स सूट) करते हैं: विभिन्न दृष्टिकोणों का तुलना:
और हुड के नीचे:? > char' काम करने लगता है, लेकिन मुझे उम्मीद है कि एक और अधिक सुरुचिपूर्ण समाधान है जिसमें मुक्केबाजी शामिल नहीं है ... – ildjarn