section

在 .obj 文件中创建一个节。

#pragma section( "section-name" [, attributes] )

备注

术语 段 和 部分的 含义可互换本主题。

在节中定义的,它保持有效。生成的其余部分。 但是,您必须使用 declspec(appdomain) 请指派) 或在该节将不会放置。

节名称 是节的名称为必需的参数。 该名称不冲突可以使用任何标准节名称。 对于不应使用,在创建部分时名称的列表 /SECTION 参见。

attributes 包括要分配给该部分的一个或多个逗号分隔的属性的一个可选参数。 可能的 attributes 是:

  • read
    允许在数据的读取操作。

  • write
    允许在数据的写入操作。

  • 执行
    允许代码执行。

  • 共享
    共享部分在所有处理该加载图像。

  • nopage
    标记该部分标记为不可分页;用于 Win32 设备驱动程序。

  • nocache
    标记该部分标记为不可缓存;用于 Win32 设备驱动程序。

  • 放弃
    标记该部分标记为 discardable;用于 Win32 设备驱动程序。

  • remove
    标记该部分标记为不内存驻留;仅 (VxD)虚拟设备驱动程序。

如果不指定特性,则部分读取和写入属性。

示例

在下面的示例中,第一命令标识节及其属性。 ,因为未声明的 __declspec(allocate),该整数 j 不放置到 mysec ; j 输入数据部分。 由于其 __declspec(allocate) 存储类的属性,该整数 i 输入 mysec 。

// pragma_section.cpp
#pragma section("mysec",read,write)
int j = 0;

__declspec(allocate("mysec"))
int i = 0;

int main(){}

请参见

参考

杂注指令和__Pragma关键字