Type.IsValueType Eigenschap
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
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.