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


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

недопустимое выражение для именованного аргумента атрибута "field"

При инициализации именованного аргумента атрибута значение должно быть константой времени компиляции.

Дополнительные сведения об атрибутах см. в разделе "Определяемые пользователем атрибуты".

Пример

Следующий пример приводит к возникновению ошибки C3101.

// C3101.cpp
// compile with: /clr /c
ref class AAttribute : System::Attribute {
public:
   int Field;
};

extern int i;

[assembly:A(Field = i)];   // C3101
[assembly:A(Field = 0)];   // OK