Udostępnij za pomocą


Błąd kompilatora C3095

"atrybut": nie można powtórzyć atrybutu

Uwagi

Niektóre atrybuty są deklarowane tak, że do obiektu docelowego nie można zastosować wielu wystąpień atrybutu.

Aby uzyskać więcej informacji, zobacz Atrybuty zdefiniowane przez użytkownika.

Przykład

Poniższy przykład generuje kod C3095.

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

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

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

[Attr(10)]   // C3095
[Attr(11)]
ref class A {};

[Attr2(10)]   // OK
[Attr2(11)]
ref class B {};