Type.IsValueType Propriété

Définition

Obtient une valeur indiquant si le Type est un type valeur.

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

Valeur de propriété

Boolean

true si Type est un type valeur ; sinon, false.

Implémente

Exemples

L’exemple suivant crée une variable de type MyEnum, recherche la IsValueType propriété et affiche le résultat.

using namespace System;

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

int main()
{
    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);
}
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

Remarques

Les types valeur sont des types représentés sous forme de séquences de bits ; les types valeur ne sont pas des classes ou des interfaces. Les types valeur sont appelés « structs » dans certains langages de programmation. Les énumérations sont un cas particulier de types valeur.

Cette propriété retourne false pour la ValueType classe, car ValueType n’est pas un type valeur lui-même. Il s’agit de la classe de base pour tous les types valeur, et par conséquent, n’importe quel type valeur peut être affecté à celui-ci. Cela ne serait pas possible s’il ValueType s’agissait d’un type valeur. Les types valeur sont boxés lorsqu’ils sont affectés à un champ de type ValueType.

Cette propriété retourne true pour les énumérations, mais pas pour le Enum type lui-même. Pour obtenir un exemple illustrant ce comportement, consultez IsEnum.

Cette propriété est en lecture seule.

S’applique à

Voir aussi