C6526
更新:2007 年 11 月
警告 C6526: 無效的大小規格: 運算式必須是陣列或指標型別
這則警告表示使用了不正確的資料型別指定屬性 (Property) 值。屬性可能會支援所有的資料型別或其子集。在上述情形中,為屬性所指定的值必須是陣列或指標型別。如需附註屬性的清單,請參閱附註屬性。
範例
下列程式碼會因為必須使用陣列或指標型別指定 WritableElementsLenght 的值,而產生這則警告:
// C
#include <CodeAnalysis\SourceAnnotations.h>
void f ([SA_Pre(WritableElementsLength="count")] char *ps, size_t count);
// C++
#include <CodeAnalysis\SourceAnnotations.h>
using namespace vc_attributes;
void f ([Pre(WritableElementsLength="count")] char *ps, size_t count);
為了更正這則警告,下列程式碼將 WritableELementsLength 的值設定為指標型別。您可以藉由指定陣列或指標型別,指出 char *ps 的長度會等於 char*pt 的長度。
// C
#include <CodeAnalysis\SourceAnnotations.h>
void f ([SA_Pre(WritableElementsLength="pt")] char *ps, char *pt);
// C++
#include <CodeAnalysis\SourceAnnotations.h>
using namespace vc_attributes;
void f ([Pre(WritableElementsLength="pt")] char *ps, char *pt);