编译器错误 C2479

“identifier”:“allocate( )”只对静态作用域的数据项有效

语法 __declspec( allocate()) 只能用于静态数据。

下面的示例生成 C2479:

// C2479.cpp
// compile with: /c
#pragma section("mycode", read)
static __declspec(allocate("mycode")) void DoNothing() {}   // C2479
__declspec(allocate("mycode"))  int i = 0;   // OK