Warnung C6522
Ungültige Größenangabe: Der Ausdruck muss vom integralen Typ sein: Anmerkung 'Anmerkung' für Funktion 'Funktion' 'Parameter'
Hinweis
Diese Warnung tritt nur in Code auf, der eine veraltete Version der Quellcodeanmerkungssprache (SOURCE-Code Annotation Language, SAL) verwendet. Es wird empfohlen, Ihren Code zu portieren, um die neueste Version von SAL zu verwenden. Weitere Informationen finden Sie unter Verwenden von SAL-Anmerkungen zum Reduzieren von C/C++-Codefehlern.
Hinweise
Diese Warnung weist darauf hin, dass ein integraler Typ erwartet wurde, aber ein falscher Datentyp verwendet wurde. Sie können Anmerkungseigenschaften verwenden, die die Größe eines Parameters in Bezug auf einen anderen Parameter akzeptieren, aber Sie müssen den richtigen Datentyp verwenden. Eine Liste der Anmerkungseigenschaften finden Sie unter Verwenden von SAL-Anmerkungen zum Reduzieren von Codefehlern.
Codeanalysename: INVALID_SIZE_STRING_TYPE
Beispiel
Der folgende Code generiert diese Warnung:
// C
#include <CodeAnalysis\SourceAnnotations.h>
void f ([SA_Pre(ValidBytes="c")] char *pc, double c);
// C++
#include <CodeAnalysis\SourceAnnotations.h>
using namespace vc_attributes;
void f ([Pre(ValidBytes="c")] char *pc, double c);
Verwenden Sie zum Korrigieren dieser Warnung size_t
den ValidBytesParam
Parameterdatentyp, wie im folgenden Beispielcode gezeigt:
// C
#include <CodeAnalysis\SourceAnnotations.h>
void f ([SA_Pre(ValidBytes="c")] char *pc, size_t c);
// C++
#include <CodeAnalysis\SourceAnnotations.h>
using namespace vc_attributes;
void f ([Pre(ValidBytes="c")] char *pc, size_t c);