Поделиться через


Ошибка компилятора C3097

"атрибут": область атрибута должна быть указана с помощью "assembly:" или "module:"

Глобальный атрибут используется неправильно.

Дополнительные сведения см. в разделе User-Defined Attributes.

Пример

В следующем примере возникает ошибка 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 {};