영어로 읽기

다음을 통해 공유


Type.IsValueType 속성

정의

Type이 값 형식인지 여부를 나타내는 값을 가져옵니다.

C#
public bool IsValueType { get; }

속성 값

true이 값 형식이면 Type이고, 그렇지 않으면 false입니다.

구현

예제

다음 예제에서는 형식 MyEnum의 변수를 만들고 속성을 확인하고 IsValueType 결과를 표시합니다.

C#
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

설명

값 형식은 비트 시퀀스로 표현되는 형식입니다. 값 형식은 클래스 또는 인터페이스가 아닙니다. 값 형식을 일부 프로그래밍 언어에서 "구조체"라고 합니다. 열거형은 값 형식의 특수한 경우입니다.

가 값 형식 자체가 아니므로 ValueType 이 속성은 클래스에 대해 ValueType 를 반환 false 합니다. 모든 값 형식의 기본 클래스이므로 모든 값 형식을 할당할 수 있습니다. 그 자체가 값 형식인 경우에는 ValueType 이 작업을 수행할 수 없습니다. 값 형식은 형식 ValueType의 필드에 할당될 때 boxed됩니다.

이 속성은 열거형에 대해 를 반환하지만 형식 자체에는 반환 trueEnum 되지 않습니다. 이 동작을 보여 주는 예제는 를 참조하세요 IsEnum.

이 속성은 읽기 전용입니다.

적용 대상

제품 버전
.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

추가 정보