다음을 통해 공유


TypeName 구조체

정의

다른 API에서 보고한 형식 정보가 CLR(공용 언어 런타임)에 종속되지 않도록 System.Type 을 대체합니다. 이 구조체는 UnderlyingTypeType과 같은 속성에 의해 값으로 사용됩니다.

.Net .NET을 사용하여 프로그래밍할 때 이 형식은 숨겨지고 System.Type 형식을 사용해야 합니다. 원시 IDL 서명당 TypeName을 사용하는 모든 Windows 런타임 API는 .NET 코드와 함께 API를 사용할 때 System.Type 값을 대신 사용합니다.

C++/WinRTwinrt::xaml_typename<T>() 도우미 함수를 사용하여 TypeName 개체를 만들 수 있습니다. 자세한 내용은 winrt::xaml_typename 함수 템플릿 및 코드 예제를 참조하세요.

public value class TypeName
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
struct TypeName
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
public struct Type
Public Structure Type
상속
TypeName
특성

Windows 요구 사항

디바이스 패밀리
Windows 10 (10.0.10240.0에서 도입되었습니다.)
API contract
Windows.Foundation.UniversalApiContract (v1.0에서 도입되었습니다.)

설명

TypeName의 프로젝션 및 멤버

Visual C++ 구성 요소 확장(C++/CX)을 사용하는 경우 이름종류 는 필드가 아닌 읽기/쓰기 속성입니다. 이 구조체 정의는 확장 동작의 일부로 platform.winmd에서 제공됩니다.

WRL(Windows 런타임 템플릿 라이브러리)을 사용하여 C++로 프로그래밍하는 경우 이름종류가 필드입니다.

필드

Kind

형식의 원본에 대한 기본 지침을 포함하는 TypeKind 값입니다.

Name

형식의 이름입니다. Kind 값에 따라(아래 참조) Name에는 다음 중 어느 것이라도 포함될 수 있습니다.

  • KindTypeKind::Custom으로 설정하면 Name의 내용이 지정되지 않고 언어 프로젝션에 종속됩니다(C#의 경우 값은 정규화된 이름임).
  • KindTypeKind::Metadata로 설정된 경우 Name에는 "Windows.UI.Xaml.Controls.Button"과 같은 Windows 런타임 클래스 이름이 포함됩니다.
  • KindTypeKind::P rimitive로 설정된 경우 Name에는 "Int32"와 같은 기본 이름이 포함됩니다.

적용 대상

추가 정보