Condividi tramite


C6506

Aggiornamento: novembre 2007

C6506

avviso C6506: annotazione non valida: la proprietà <nome> può essere utilizzata solo con valori di tipo puntatore

L'avviso indica che una proprietà viene utilizzata con un tipo diverso da puntatore o dai tipi di matrice. Le proprietà Access, Tainted e Valid possono essere utilizzate con tutti i tipi di dati. Altre proprietà, quali ValidBytesConst, ValidElementsConst, ElementSize e NullTerminted, supportano valori di puntatore, puntatore a membro o tipi di matrice. Per un elenco completo delle proprietà e dei tipi di dati supportati, vedere Proprietà di annotazione.

Esempio

Il codice seguente genera questo avviso:

// C
#include <CodeAnalysis\SourceAnnotations.h>
void f([SA_Pre(ValidElementsConst=4)] int x);

// C++
#include <CodeAnalysis\SourceAnnotations.h>
using namespace vc_attributes;

void f([Pre(ValidElementsConst=4)] int x);

Per risolvere il problema, utilizzare un puntatore o un tipo di matrice, come illustrato nell'esempio di codice seguente:

// C
#include <CodeAnalysis\SourceAnnotations.h>
void f([SA_Pre(ValidElementsConst=4)] int *px);
 - or -
void f([SA_Pre(ValidElementsConst=4)] int px[]);

// C++
#include <CodeAnalysis\SourceAnnotations.h>
using namespace vc_attributes;
void f([Pre(ValidElementsConst=4)] int *px);
 - or -
void f([Pre(ValidElementsConst=4)] int px[]);

Vedere anche

Riferimenti

C6516