Erreur du compilateur C3097

'attribut' : la portée de l’attribut doit être définie avec 'assembly:' ou 'module:'

Un attribut global a été utilisé incorrectement.

Pour plus d'informations, consultez User-Defined Attributes.

Exemple

L’exemple suivant génère l’erreur C3097.

// C3097.cpp
// compile with: /clr /c
using namespace System;

[AttributeUsage(AttributeTargets::All, AllowMultiple = true)]
public ref class Attr : public Attribute {
public:
   Attr(int t) : m_t(t) {}
   int m_t;
};

[Attr(10)];   // C3097
[assembly:Attr(10)];   // OK

[Attr(10)]   // OK
public ref class MyClass {};