2010-05-19 11 views
15
[<Flags>] 
type LikeMatch = 
    | None = 0 
    | Start = 1 
    | End = 2 
    | All = Start ||| End //ERROR: Unexpected identifier in union case 

मैंने एनम प्रकार के सदस्यों को अर्हता प्राप्त करने का भी प्रयास किया है। क्या एफ # में ऐसा करने का कोई तरीका है?अन्य सदस्यों से बना एनम (झंडे) सदस्य

उत्तर

10

एफ # भाषा संदर्भ के अनुसार ऐसा करने का कोई तरीका नहीं है। एक एफ # enum में = चिह्न के दाहिने हाथ की ओर एक पूर्णांक शाब्दिक होना आवश्यक है

व्याकरण

type enum-name = 
    | value1 = integer-literal1 
    | value2 = integer-literal2 
26

JaredPar कहते हैं यह भाषा से अनुमति नहीं है, लेकिन एफ # बाइनरी अक्षर है जो दिखाता है कि कौन से बिट सेट किए जा रहे हैं:

open System 

[<Flags>] 
type LikeMatch = 
    | None = 0b000000000 
    | Start = 0b000000001 
    | End = 0b000000010 
    | All = 0b000000011 
+1

आह, हाँ। मैं उसके बारे में भूल गया था। याद दिलाने के लिए शुक्रिया। – Daniel

संबंधित मुद्दे