编译器错误 C2341

“section name”:使用段之前必须用 #pragma data_seg、code_seg 或节进行定义

allocate 语句是指尚未由 code_segdata_segsection pragma 定义的段。

以下示例生成 C2341:

// C2341.cpp
// compile with: /c
__declspec(allocate(".test"))   // C2341
int j = 1;

可能的解决方法:

// C2341b.cpp
// compile with: /c
#pragma data_seg(".test")
__declspec(allocate(".test"))
int j = 1;