Type.IsEnum プロパティ
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
現在の Type が列挙体であるどうかを示す値を取得します。
public:
virtual property bool IsEnum { bool get(); };
public:
property bool IsEnum { bool get(); };
public virtual bool IsEnum { get; }
public bool IsEnum { get; }
member this.IsEnum : bool
Public Overridable ReadOnly Property IsEnum As Boolean
Public ReadOnly Property IsEnum As Boolean
現在の true
が列挙体を表している場合は Type。それ以外の場合は false
。
次の例では、 プロパティの使用方法 IsEnum
を示します。
using namespace System;
enum class Color
{ Red, Blue, Green };
int main()
{
Type^ colorType = Color::typeid;
Type^ enumType = Enum::typeid;
Console::WriteLine( "Is Color an enum? {0}.", colorType->IsEnum );
Console::WriteLine( "Is Color a value type? {0}.", colorType->IsValueType );
Console::WriteLine( "Is Enum an enum Type? {0}.", enumType->IsEnum );
Console::WriteLine( "Is Enum a value type? {0}.", enumType->IsValueType );
}
// The example displays the following output:
// Is Color an enum? True.
// Is Color a value type? True.
// Is Enum an enum type? False.
// Is Enum a value type? False.
using System;
public enum Color
{ Red, Blue, Green }
class TestIsEnum
{
public static void Main()
{
Type colorType = typeof(Color);
Type enumType = typeof(Enum);
Console.WriteLine("Is Color an enum? {0}.", colorType.IsEnum);
Console.WriteLine("Is Color a value type? {0}.", colorType.IsValueType);
Console.WriteLine("Is Enum an enum Type? {0}.", enumType.IsEnum);
Console.WriteLine("Is Enum a value type? {0}.", enumType.IsValueType);
}
}
// The example displays the following output:
// Is Color an enum? True.
// Is Color a value type? True.
// Is Enum an enum type? False.
// Is Enum a value type? False.
open System
type Color =
| Red = 0
| Blue = 1
| Green = 2
let colorType = typeof<Color>
let enumType = typeof<Enum>
printfn $"Is Color an enum? {colorType.IsEnum}."
printfn $"Is Color a value type? {colorType.IsValueType}."
printfn $"Is Enum an enum Type? {enumType.IsEnum}."
printfn $"Is Enum a value type? {enumType.IsValueType}."
// The example displays the following output:
// Is Color an enum? True.
// Is Color a value type? True.
// Is Enum an enum type? False.
// Is Enum a value type? False.
Public Enum Color
Red
Blue
Green
End Enum
Class Example
Public Shared Sub Main()
Dim colorType As Type = GetType(Color)
Dim enumType As Type = GetType([Enum])
Console.WriteLine("Is Color an enum? {0}.", colorType.IsEnum)
Console.WriteLine("Is Color a value type? {0}.", colorType.IsValueType)
Console.WriteLine("Is Enum an enum type? {0}.", enumType.IsEnum)
Console.WriteLine("Is Enum a value type? {0}.", enumType.IsValueType)
End Sub
End Class
' The example displays the following output:
' Is Color an enum? True.
' Is Color a value type? True.
' Is Enum an enum type? False.
' Is Enum a value type? False.
このプロパティは列挙型に true
対して を返しますが、型自体には Enum 返しません。
現在 Type の が構築されたジェネリック型を表す場合、このプロパティは、型の構築元のジェネリック型定義に適用されます。 たとえば、現在Typeの が (Visual Basic では )MyGenericType(Of Integer)
を表すMyGenericType<int>
場合、このプロパティの値は によってMyGenericType<T>
決定されます。
現在 Type の がジェネリック型またはジェネリック メソッドの定義で型パラメーターを表す場合、このプロパティは常に を返します false
。
このプロパティは読み取り専用です。
製品 | バージョン |
---|---|
.NET | Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10 |
.NET Framework | 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1 |
.NET Standard | 2.0, 2.1 |
.NET に関するフィードバック
.NET はオープンソース プロジェクトです。 フィードバックを提供するにはリンクを選択します。