C6510
Aviso C6510: anotação inválido: A propriedade de NullTerminated pode ser usada somente em valores de ponteiro ou o tipo de matriz
Este aviso indica o uso incorreto da propriedade NullTerminated. Você só pode usar essa propriedade em ponteiro ou tipos de matriz. Use a propriedade NullTerminated em qualquer outro tipo de dados irá gerar um aviso de C6510.
Exemplo
O código a seguir gera este aviso:
// C
#include <CodeAnalysis\SourceAnnotations.h>
void f([SA_Pre(NullTerminated=SA_No)] int x);
// C++
#include <CodeAnalysis\SourceAnnotations.h>
using namespace vc_attributes;
void f([Pre(NullTerminated=No)] int x);
Para corrigir esse aviso, o código a seguir modifica o parâmetro int x para int *x:
// C
#include <CodeAnalysis\SourceAnnotations.h>
void f([SA_Pre(NullTerminated=SA_No)] int *x);
//C++
#include <CodeAnalysis\SourceAnnotations.h>
using namespace vc_attributes;
void f([Pre(NullTerminated=No)] int *x);