Compilerfehler C3114

'Argument': Kein gültiges benanntes Attributargument

Damit eine Datenmember einer Attributklasse ein gültiges benanntes Argument sein kann, darf es nicht mit static, const oder literal gekennzeichnet werden. Wenn es sich um eine Eigenschaft handelt, darf die Eigenschaft nicht static sein, und sie muss über get- und set-Accessoren verfügen.

Weitere Informationen finden Sie unter property und User-Defined Attributes.

Beispiel

Im folgenden Beispiel wird C3114 generiert.

// C3114.cpp
// compile with: /clr /c
public ref class A : System::Attribute {
public:
   static property int StaticProp {
      int get();
   }

   property int Prop2 {
      int get();
      void set(int i);
   }
};

[A(StaticProp=123)]   // C3114
public ref class R {};

[A(Prop2=123)]   // OK
public ref class S {};