次の方法で共有


C6521

警告 C6521: 無効なサイズ指定です: * 演算子はポインター型にのみ適用できます

この警告は、パラメーターのサイズを別のパラメーターとして受け取る注釈パラメーターで * 演算子が不適切に使用されていることを示します。 サイズのパラメーターがポインター型以外の型で、それを逆参照するために * 演算子が使用されている場合に、この警告が生成されます。 ただし、サイズのパラメーターがポインター型として渡されている場合は、* 演算子を使用できます。

使用例

この警告が発生するコード例を次に示します。

// C
#include <CodeAnalysis\SourceAnnotations.h>
void f ([SA_Pre(WritableElements="*c")] char *pc, size_t c);

// C++
#include <CodeAnalysis\SourceAnnotations.h>
using namespace vc_attributes;
void f ([Pre(WritableElements="*c")] char *pc, size_t c);

この警告を修正するには、WritableElements プロパティ値から * 演算子を削除するか、size_t にポインターを渡します。 次に示すコードでは、size_t *c を使用しています。

// C
#include <CodeAnalysis\SourceAnnotations.h>
void f ([SA_Pre(WritableElements="*c")] char *pc, size_t *c);

// C++
#include <CodeAnalysis\SourceAnnotations.h>
using namespace vc_attributes;
void f ([Pre(WritableElements="*c")] char *pc, size_t *c); 

参照

その他の技術情報

注釈のプロパティ