タグ付けされた質問 「enums」

型の要素、メンバー、または列挙子と呼ばれる名前付きの値のセットで構成されるデータ型。

7
Java Enumの定義
私はJavaのジェネリックをかなりよく理解していると思っていましたが、java.lang.Enumで次のことに遭遇しました。 class Enum<E extends Enum<E>> 誰かがこの型パラメーターを解釈する方法を説明できますか?同様の型パラメーターを使用できる場所の他の例を提供するためのボーナスポイント。
151 java  generics  enums  crtp 

5
クラス内で列挙型を宣言する
次のコードスニペットでは、Color列挙型Carのスコープを制限し、グローバル名前空間を「汚染」しないようにするために、列挙型がクラス内で宣言されています。 class Car { public: enum Color { RED, BLUE, WHITE }; void SetColor( Car::Color color ) { _color = color; } Car::Color GetColor() const { return _color; } private: Car::Color _color; }; (1)これはColor列挙型の範囲を制限する良い方法ですか?または、Carクラス外で宣言する必要がありますが、独自の名前空間または構造内で宣言する必要がありますか?私は本日この記事に出くわしました。後者は、後者を支持し、列挙に関するいくつかの良い点を議論しています:http : //gamesfromwithin.com/stupid-c-tr​​icks-2-better-enums。 (2)この例では、クラス内で作業する場合、列挙型をとしてコーディングするのが最善ですかCar::Color、それともColor十分ですか?(Colorグローバル名前空間で別の列挙型が宣言されている場合に備えて、前者のほうが良いと思います。少なくとも、参照している列挙型については明示的です。)
150 c++  class  enums  namespaces  scope 

10
列挙型定義のチルダ(〜)は何ですか?
今でもずっとC#を使用していても、私はまだ知らないことを見つけることができたことにいつも驚いています... 私はこれをインターネットで検索してみましたが、検索で「〜」を使用してもうまくいかず、MSDNでも何も見つかりませんでした(それがないと言っているわけではありません)。 最近、このコードスニペットを見ましたが、チルド(〜)はどういう意味ですか /// <summary> /// Enumerates the ways a customer may purchase goods. /// </summary> [Flags] public enum PurchaseMethod { All = ~0, None = 0, Cash = 1, Check = 2, CreditCard = 4 } 私はそれを見て少し驚いたので、コンパイルしてみましたが、うまくいきました...しかし、それが何を意味するのか、または何をするのかはまだわかりません。何か助け?

7
Java enumリテラルがジェネリック型パラメーターを持つことができないのはなぜですか?
Java列挙型は素晴らしいです。ジェネリックもそうです。もちろん、型消去のために後者の限界を知っています。しかし、理解できないことが1つあります。なぜ、このような列挙型を作成できないのですか。 public enum MyEnum<T> { LITERAL1<String>, LITERAL2<Integer>, LITERAL3<Object>; } このジェネリック型パラメーター<T>は、さまざまな場所で役立ちます。メソッドへのジェネリック型パラメーターを想像してください: public <T> T getValue(MyEnum<T> param); または列挙クラス自体でも: public T convert(Object o); より具体的な例#1 上記の例は一部にとって抽象的すぎるように見えるかもしれないので、これを行う理由のより現実的な例を次に示します。この例では、使用したい 列挙型。プロパティキーの有限セットを列挙できるため ジェネリックス。これは、プロパティレベルを格納するためのメソッドレベルの型安全性を持つことができる public interface MyProperties { public <T> void put(MyEnum<T> key, T value); public <T> T get(MyEnum<T> key); } より具体的な例#2 データ型の列挙があります: public interface DataType<T> {} public enum SQLDataType<T> …
148 java  generics  enums 

16
Java列挙型と、静的な最終的なパブリックフィールドを持つクラスの利点は何ですか?
私はC#に非常に精通していますが、Javaでの作業が増えています。Javaの列挙型は基本的にC#の列挙型と同等であることがわかったはずですが、明らかにそうではありません。最初、私はJava enumに複数のデータが含まれている可能性があることを知って興奮しました(http://docs.oracle.com/javase/tutorial/java/javaOO/enum.html)。しかし、それ以来、列挙型要素に特定の値を簡単に割り当てる機能や、その結果、適切な労力をかけずに整数を列挙型に変換する機能など、C#でささいな多くの機能が見つからないことがわかりました(つまり、整数値を対応するJava Enumに変換します)。 だから私の質問はこれです:public static finalフィールドがたくさんあるクラスよりもJava enumに利点がありますか?それとも、よりコンパクトな構文を提供するだけですか? 編集:より明確にさせてください。同じ型の一連のpublic static finalフィールドを持つクラスに対するJava enumの利点は何ですか?たとえば、最初のリンクの惑星の例では、これらのパブリック定数を持つクラスに対する列挙型の利点は何ですか? public static final Planet MERCURY = new Planet(3.303e+23, 2.4397e6); public static final Planet VENUS = new Planet(4.869e+24, 6.0518e6); public static final Planet EARTH = new Planet(5.976e+24, 6.37814e6); public static final Planet MARS = new Planet(6.421e+23, 3.3972e6); public static final …
147 java  enums 


6
C ++ enumクラスはメソッドを持つことができますか?
2つの値を持つ列挙型クラスがあり、値を受け取ってもう1つの値を返すメソッドを作成したいと思います。型の安全性も維持したいと考えています(そのため、列挙型ではなく列挙型クラスを使用しています)。 http://www.cplusplus.com/doc/tutorial/other_data_types/はメソッドについて何も触れていませんが、どのタイプのクラスにもメソッドを含めることができるという印象を受けました。
145 c++  methods  enums 

3
UMLクラス図の列挙型
クラス図をモデル化しています。クラスの属性は列挙です。これをどのようにモデル化しますか?通常、あなたはこのようなことをします: - name : string しかし、これを列挙型でどうやって行うのですか?
145 class  enums  uml  diagram 

9
Obj-CでSwiftのEnumを使用することは可能ですか?
Obj-Cクラスの一部をSwiftに変換しようとしています。そして、他のいくつかのObj-Cクラスは、その変換されたクラスでまだ列挙型を使用しています。プレリリースドキュメントで検索しましたが、見つからなかったか、見逃してしまいました。Obj-CクラスでSwift enumを使用する方法はありますか?または、この問題のドキュメントへのリンク? これは、古いObj-Cコードと新しいSwiftコードで列挙型を宣言する方法です。 私の古いObj-Cコード: typedef NS_ENUM(NSInteger, SomeEnum) { SomeEnumA, SomeEnumB, SomeEnumC }; @interface SomeClass : NSObject ... @end 私の新しいSwiftコード: enum SomeEnum: NSInteger { case A case B case C }; class SomeClass: NSObject { ... } 更新:回答から。1.2より古いバージョンのSwiftではできません。しかし、この公式のSwift Blogによると。スウィフト1.2でXCodeの6.3とともにリリースされていること、あなたは追加することにより、Objective-Cでスウィフト列挙型を使用することができます@objcの前にenum
144 objective-c  enums  swift 

21
Objective-Cのtypedefを同等の文字列に変換する
.hファイルでtypedefが宣言されていると仮定します。 typedef enum { JSON, XML, Atom, RSS } FormatType; typedefの数値を文字列に変換する関数を作成したいと思います。たとえば、メッセージ[self toString:JSON]が送信された場合。「JSON」を返します。 関数は次のようになります。 -(NSString *) toString:(FormatType)formatType { //need help here return []; } ちなみに、この構文を試してみると [self toString:FormatType.JSON]; typedef値をメソッドに渡すと、エラーが発生します。何が欠けていますか?
141 c  objective-c  enums  typedef 


6
Pythonで文字列を列挙に変換する
文字列をPythonのEnumクラスに変換(逆シリアル化)する正しい方法は何でしょうか。getattr(YourEnumType, str)仕事はしているようですが、それが十分に安全かどうかはわかりません。 より具体的には、次のように'debug'文字列をEnumオブジェクトに変換したいと思います。 class BuildType(Enum): debug = 200 release = 400

7
Cの列挙型のサイズは?
列挙値のセットを作成していますが、各列挙値は64ビット幅である必要があります。私が正しく思い出せば、列挙型は一般的にintと同じサイズです。(少なくともGCCでは)コンパイラが値を保持するために必要な任意の幅を列挙型にできることをどこかで読んだと思いました。それで、64ビット幅の列挙型を持つことは可能ですか?
140 c  enums 



弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.