Avviso C6514
Annotazione non valida: il valore della proprietà 'name' supera le dimensioni della matrice
Questo avviso indica che un valore della proprietà supera le dimensioni della matrice specificata nel parametro da annotare. Questo avviso si verifica quando il valore specificato per la proprietà di annotazione è maggiore della lunghezza effettiva della matrice passata.
Nome dell'analisi del codice: BUFFER_SIZE_EXCEEDS_ARRAY_SIZE
Il codice seguente genera questo avviso perché la dimensione della matrice è 6, ma il valore della ValidElementsConst
proprietà è 8:
// C
#include <CodeAnalysis\SourceAnnotations.h>
void f( [SA_Pre(Deref=1, ValidElementsConst=8)] char(*matrix) [6] );
// C++
#include <CodeAnalysis\SourceAnnotations.h>
using namespace vc_attributes;
void f( [Pre(Deref=1, ValidElementsConst=8)] char(*matrix) [6] );
Per correggere questo avviso, verificare che le dimensioni specificate in ValidElementsConst siano minori o uguali alle dimensioni della matrice, come illustrato nel codice di esempio seguente:
// C
#include <CodeAnalysis\SourceAnnotations.h>
void f( [SA_Pre(Deref=1, ValidElementsConst=6)] char(*matrix) [6] );
// C++
#include <CodeAnalysis\SourceAnnotations.h>
using namespace vc_attributes;
void f( [Pre(Deref=1, ValidElementsConst=6)] char(*matrix) [6] );