Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
'construct': Attribute, die mit der vorherigen Deklaration inkonsistent sind
Bemerkungen
Die Attribute, die auf eine Definition angewendet werden, stehen im Konflikt mit den Attributen, die auf eine Deklaration angewendet werden.
Eine Möglichkeit zum Auflösen von C3163 besteht darin, Attribute für die Weiterleitungsdeklaration zu beseitigen. Alle Attribute einer Weiterleitungsdeklaration sollten kleiner als die Attribute in der Definition oder höchstens gleich ihnen sein.
Eine mögliche Ursache des C3163-Fehlers ist die Microsoft-Quellcodeanmerkungssprache (SAL). Die SAL-Makros werden nicht erweitert, es sei denn, Sie kompilieren Ihr Projekt mithilfe der /analyze Kennzeichnung. Ein Programm, das sauber kompiliert wird, ohne /analyze C3163 zu lösen, wenn Sie versuchen, es mit der /analyze Option neu zu kompilieren. Weitere Informationen zu SAL finden Sie unter SAL Annotations.
Beispiel
Im folgenden Beispiel wird C3163 generiert.
// C3163.cpp
// compile with: /clr /c
using namespace System;
[CLSCompliant(true)] void f();
[CLSCompliant(false)] void f() {} // C3163
// try the following line instead
// [CLSCompliant(true)] void f() {}