Compartilhar via


Atributos (C++/CX)

Um atributo é um tipo especial de classe ref que pode ser acrescentando no início entre colchetes para tipos e métodos do Windows Runtime, de modo a especificar determinados comportamentos na criação de metadados. Vários atributos predefinidos, por exemplo Windows::Foundation::Metadata::WebHostHidden, são normalmente usados no código C++/CX. Este exemplo mostra como o atributo é aplicado a uma classe:

[Windows::Foundation::Metadata::WebHostHidden]
public ref class MyClass : Windows::UI::Xaml::DependencyObject {};

Atributos personalizados

Você também pode definir atributos personalizados. Atributos personalizados devem estar de acordo com estas regras do Windows Runtime:

  • Atributos personalizados podem conter somente campos públicos.

  • Os campos de atributo personalizado podem ser inicializados quando o atributo é aplicado a uma classe.

  • Um campo pode ser de um destes tipos:

    • int32 (int)

    • uint32 (int não assinado)

    • bool

    • Platform::String^

    • Windows::Foundation::HResult

    • Platform::Type^

    • classe enum pública (inclui enums definidos pelo usuário)

O exemplo a seguir mostra como definir um atributo personalizado e inicializá-lo quando você for usá-lo.

[Windows::Foundation::Metadata::WebHostHiddenAttribute]
public ref class MyCustomAttribute sealed : Platform::Metadata::Attribute {
public:
    int Num;
    Platform::String^ Msg;
};

[MyCustomAttribute(Num=5, Msg="Hello")]
public ref class Class1 sealed
{
public:
    Class1();
};

Confira também

Sistema de tipos (C++/CX)
Referência da linguagem C++/CX
Referência de namespaces