C6504

警告 C6504:无效的批注: 属性只能用于指针值、指向成员的指针值或数组类型值

此警告意味着对不兼容的数据类型使用了属性。有关属性所支持的数据类型的更多信息,请参见 批注属性

示例

在下面的代码中,因为不能对引用数据类型使用 _Null_ 属性,所以会生成此警告。

#include<sal.h>

class Point
{
public:
    //  members
};

void f(_Pre_ _Null_ Point& pt)
{
    // code ...
}

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

#include<sal.h>

class Point
{
public:
    //  members
};

void f(_Pre_ _Null_  Point* pt)
{
    // code ...
}

在前面显示的缺陷代码中,因为属性冲突导致了无效的批注,所以也会生成警告 C6516