C6508

警告 C6508:无效的批注: 不允许对 const 值执行写访问

说明说明

此警告在使用源代码注释语言的代码仅发生 (SAL) 的一个弃用的版本。建议您端口您的代码使用 SAL 的最新版本。有关更多信息,请参见使用 SAL 批注以减少 C/C++ 代码缺陷

此警告意味着对常数参数指定的 Access 属性暗示它可被写入。对于常数值,Access=Read 是唯一有效的设置。

示例

下面的代码生成此警告:

// C
#include <CodeAnalysis\SourceAnnotations.h>
void fD ([SA_Pre(Deref=1,Access=SA_Write)]const char *pc); 

// C++
#include <CodeAnalysis\SourceAnnotations.h>
using namespace vc_attributes;
void f ([Pre(Deref=1,Access=Write)]const char *pc);

若要更正此警告,请使用下面的代码:

// C
#include <CodeAnalysis\SourceAnnotations.h>
void f ([SA_Pre(Deref=1,Access=SA_Read)]const char *pc); 

// C++
#include <CodeAnalysis\SourceAnnotations.h>
using namespace vc_attributes;
void f ([Pre(Deref=1,Access=Read)]const char *pc);

请参见

其他资源

Deref

Access