Une chose que j'aime vraiment à propos de AS3 sur AS2 est combien plus de vérification de type à la compilation ajoute. Cependant, il semble manquer quelque peu en ce sens qu'il n'existe aucune structure d'énumération vérifiée par type. Quelle est une bonne (meilleure/acceptée) façon de faire des types énumérés personnalisés dans AS3?Énumère dans AS3/Flash/Flex?
Répondre
votre réponse après le saut :-)
Je sais, c'est un peu obsolète et ne répond pas exactement à votre question, mais vous voudrez peut-être consultez haXe. Vous pouvez également l'utiliser pour générer as3 pour vous, et il y a beaucoup d'autres raisons de l'utiliser. Mais ce serait vraiment hors sujet ...
Cool, merci pour la suggestion! – HanClinto
J'ai récemment découvert que as3commons library a une bonne classe d'assistance de base Enum pour implémenter enums.
Pour être un vrai ENUM dont il a besoin à la fois:
- Imposer le type de sécurité
- prévenir les cas voyous
Peu de solutions simples faire les deux, et la base les classes qui le font sont trop complexes IMO.
Mon favori actuel est le style suivant - sûr et simple, et ne doit pas confondre tout le monde:
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");
}
}
}
OPPOSITION: Je l'ai vu de rares circonstances où une initialisation variables lit un ENUM const avant il mis , mais dans ces cas, le problème s'appliquait également aux autres émulations enum basées sur const.
- 1. Dictionnaire .NET: énumère uniquement les threads en toute sécurité?
- 2. Quoi de neuf dans Python 3.x?
- 3. Le panneau DataSet (Report Data) dans le concepteur SSRS a disparu
- 4. Existe-t-il une API Sourcesafe pour obtenir le total des lignes de code dans le contrôle de code source?
- 5. Application sans référence à Office nécessitant Office 12 (2007) dans GAC pour ClickOnce
- 6. Rails Plugins
- 7. Comment puis-je montrer quels utilisateurs ont rempli un formulaire dans une bibliothèque de formulaires?
- 8. problème avec NetServerEnum() dans C#
- 9. Comment obtenir le nombre de chaque valeur, basé sur une autre table?
- 10. Existe-t-il un programme pour énumérer les fenêtres?
- 11. ASP.NET MVC et REST URI
- 12. Existe-t-il un moyen de transmettre toutes les variables définies à un GroovyShell?
- 13. Comment gérer les champs de texte Append Only dans une vue Sharepoint DataSheet?
- 14. Impression de valeurs uniques à partir de plusieurs tables dans l'ordre chronologique inverse
- 15. Trier NSFileManager Résultats
- 16. Boîte de dépôt C# des lecteurs
- 17. Imprimer Version imprimable, en essayant d'imprimer 2 colonnes informations
- 18. DirectInput plage de joystick analogique
- 19. Comment faire pour arrêter EnumWindows exécutant infiniment win32
- 20. ImageMagickError impossible de lire la police `(null) ':` (null)'
- 21. Récupération des valeurs de plusieurs tables dans une base de données MySQL
- 22. Détermination de la taille des sites SharePoint/collections de sites
- 23. Barres d'application et «Afficher le bureau»
- 24. MacRuby, erreur de feuille
- 25. Répertorie tous les lecteurs/partitions et récupère le périphérique/dev/rdisc avec Cocoa
- 26. Liste des sujets actifs du forum
- 27. Validation de la table extensible InfoPath
- 28. SubSonic - Projet de bibliothèque de classes?
- 29. Définir css dans() dans jquery
- 30. propriétés dans ComboBox dans WPF
Bonne réponse, merci! – HanClinto
Le lien est rompu. – Joe
pendant que ma modification est en cours de révision Je pense que ce lien serait similaire à celui fourni à l'origine: [Enumérations avec classes] (http://help.adobe.com/en_US/ActionScript/3.0_ProgrammingAS3/WS5b3ccc516d4fbf351e63e3d118a9b90204-7f2f.html) – gltovar