2008-12-01 1 views
20

एएस 2 पर एएस 3 के बारे में मुझे वास्तव में एक चीज पसंद है, यह कितना अधिक संकलित-समय टाइप-चेकिंग जोड़ता है। हालांकि, ऐसा लगता है कि इसमें कोई कमी नहीं है कि कोई प्रकार की जांच की गई गणना संरचना उपलब्ध नहीं है। AS3 में कस्टम समेकित प्रकारों को करने के लिए एक अच्छा (सर्वोत्तम/स्वीकार्य) तरीका क्या है?एएस 3/फ्लैश/फ्लेक्स में एनम्स?

उत्तर

17
+0

अच्छा जवाब, धन्यवाद! – HanClinto

+0

लिंक टूटा हुआ है। – Joe

+0

जबकि मेरे संपादन की समीक्षा की जा रही है, मुझे लगता है कि यह लिंक मूल रूप से प्रदान किए गए मूल के समान होगा: [कक्षाओं के साथ गणना] (http://help.adobe.com/en_US/ActionScript/3.0_ProgrammingAS3/WS5b3ccc516d4fbf351e63e3d118a9b90204-7f2f.html) – gltovar

16

के बाद अपने जवाब बस, इस एक छोटे से पुरानी हो चुकी है my way

+0

थोड़ा वर्बोज़, लेकिन मुझे यह पसंद है। – Rytmis

1

मैं जानता हूँ कि साझा करना चाहते थे और वास्तव में अपने प्रश्न का उत्तर नहीं है, लेकिन आप हो सकता है चाहता हूँ haXe देखें। आप इसे अपने लिए एएस 3 उत्पन्न करने के लिए भी उपयोग कर सकते हैं, इसके अलावा इसका उपयोग करने के कई अन्य कारण भी हैं। लेकिन यह वास्तव में विषय से निकल जाएगा ...

+0

कूल, सुझाव के लिए धन्यवाद! – HanClinto

1

मुझे हाल ही में पता चला है कि as3commons library में एनएमएस अपूर्णता के लिए एक अच्छा आधार सहायक वर्ग Enum है।

1

आदेश में एक सच enum यह दोनों की जरूरत होने के लिए:

  • लागू प्रकार सुरक्षा
  • रोकें दुष्ट उदाहरणों
  • सरल समाधान की

कुछ दोनों करते हैं, और आधार कक्षाएं जो अत्यधिक जटिल आईएमओ हैं।

public final class FruitEnum { 
    private static const CREATE:Object = {}; 

    public static const APPLE:FruitEnum = new FruitEnum(CREATE); 
    public static const ORANGE:FruitEnum = new FruitEnum(CREATE); 
    public static const BANANA:FruitEnum = new FruitEnum(CREATE); 

    public function FruitEnum(permission:Object) { 
     if (permission !== CREATE){ 
      throw new Error("Enum cannot be instantiated from outside"); 
     } 
    } 
} 

चेतावनी:: मैं यह सेट से पहले दुर्लभ परिस्थितियों जहां एक चर initialisation एक enum स्थिरांक पढ़ता देखा है सुरक्षित और सरल है, और भ्रमित नहीं होना चाहिए किसी को भी -

मेरे वर्तमान पसंदीदा निम्नलिखित शैली है , लेकिन उन मामलों में समस्या अन्य कॉन्स-आधारित एनम इम्यूलेशन के लिए समान रूप से लागू होती है।