Partilhar via


Atributos (C++/CX)

Um atributo é um tipo especial de classe ref que pode ser precedido entre colchetes para tipos e métodos do Tempo de Execução do Windows para especificar determinados comportamentos na criação de metadados. Vários atributos predefinidos — por exemplo, Windows::Foundation::Metadata::WebHostHidden — são comumente 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. Os atributos personalizados devem estar em conformidade com estas regras do Tempo de Execução do Windows:

  • Os atributos personalizados podem conter apenas campos públicos.

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

  • Um campo pode ser um destes tipos:

    • Int32 (INT)

    • uint32 (int não assinado)

    • bool

    • Plataforma::String^

    • Windows::Fundação::HResult

    • Plataforma::Type^

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

O próximo exemplo mostra como definir um atributo personalizado e, em seguida, inicializá-lo quando você 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();
};

Ver também

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