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


Предупреждение компилятора (уровень 3) C4580

использовать [attribute] не рекомендуется; вместо этого в качестве базового класса укажите System::Attribute или Platform::Metadata

[атрибут] больше не является предпочтительным синтаксисом для создания пользовательских атрибутов. Дополнительные сведения см. в разделе User-Defined Attributes. Для кода CLR атрибуты должны быть производными от System::Attribute. Для кода среды выполнения Windows атрибуты должны быть производными от Platform::Metadata.

Пример

В следующем примере показано возникновение ошибки C3454 и приводятся сведения по ее устранению.

// C4580.cpp
// compile with: /W3 /c /clr
[attribute]   // C4580
public ref class Attr {
public:
   int m_t;
};

public ref class Attr2 : System::Attribute {
public:
   int m_t;
};