Type.IsValueType Eigenschap

Definitie

Hiermee wordt een waarde opgehaald die aangeeft of het Type een waardetype is.

public:
 property bool IsValueType { bool get(); };
public bool IsValueType { get; }
member this.IsValueType : bool
Public ReadOnly Property IsValueType As Boolean

Waarde van eigenschap

trueals het Type een waardetype is; anders. false

Implementeringen

Voorbeelden

In het volgende voorbeeld wordt een variabele van het type MyEnumgemaakt, wordt gecontroleerd op de IsValueType eigenschap en wordt het resultaat weergegeven.

using System;

// Declare an enum type.
enum NumEnum { One, Two }

public class Example
{

    public static void Main(string []args)
    {
        bool flag = false;
        NumEnum testEnum = NumEnum.One;
        // Get the type of testEnum.
        Type t = testEnum.GetType();
        // Get the IsValueType property of the testEnum variable.
        flag = t.IsValueType;
        Console.WriteLine("{0} is a value type: {1}", t.FullName, flag);
    }
}
// The example displays the following output:
//        NumEnum is a value type: True
// Declare an enum type.
type NumEnum = One = 1 | Two = 2

let testEnum = NumEnum.One
// Get the type of testEnum.
let t = testEnum.GetType()
// Get the IsValueType property of the testEnum variable.
let flag = t.IsValueType
printfn $"{t.FullName} is a value type: {flag}"
// The example displays the following output:
//        NumEnum is a value type: True
' Declare an enum type.
Enum NumEnum
    One
    Two
End Enum
    
Public Class Example

    Public Shared Sub Main()
        Dim flag As Boolean = False
        Dim testEnum As NumEnum = NumEnum.One
        ' Get the type of myTestEnum.
        Dim t As Type = testEnum.GetType()
        ' Get the IsValueType property of the myTestEnum variable.
         flag = t.IsValueType()
         Console.WriteLine("{0} is a value type: {1}", t.FullName, flag)
     End Sub 
 End Class  
' The example displays the following output:
'       NumEnum is a value type: True

Opmerkingen

Waardetypen zijn typen die worden weergegeven als reeksen bits; waardetypen zijn geen klassen of interfaces. Waardetypen worden in sommige programmeertalen aangeduid als 'structs'. Opsommingen zijn een speciaal geval van waardetypen.

Deze eigenschap retourneert false voor de ValueType klasse, omdat ValueType dit geen waardetype zelf is. het is de basisklasse voor alle waardetypen en daarom kan elk waardetype eraan worden toegewezen. Dit zou niet mogelijk zijn als ValueType zichzelf een waardetype was. Waardetypen worden in een vak geplaatst wanneer ze worden toegewezen aan een veld van het type ValueType.

Deze eigenschap retourneert true voor opsommingen, maar niet voor het Enum type zelf. Zie voor een voorbeeld dat dit gedrag IsEnumlaat zien.

Deze eigenschap is alleen-lezen.

Van toepassing op

Zie ook