section
Cria uma seção em um arquivo. obj.
#pragma section( "section-name" [, attributes] )
Comentários
O significado dos termos segmento e seção são intercambiáveis neste tópico.
Uma seção for definida, ele permanece válido para o restante da compilação.Entretanto, você deve usar __declspec(allocate) ou nada será colocado na seção.
nome da seção é um parâmetro obrigatório que será o nome da seção.O nome não deve entrar em conflito com qualquer nome de seção padrão.Consulte /SECTION para obter uma lista de nomes que você não deve usar ao criar uma seção.
attributesé um parâmetro opcional que consiste em um ou mais atributos de separados por vírgulas que você deseja atribuir à seção.Possíveis attributes são:
leitura
Permite que as operações de leitura nos dados.gravação
Permite operações de gravação nos dados.executar
Permite que o código seja executado.compartilhado
Compartilha a seção entre todos os processos que carregar a imagem.noPage
Marca da seção como não paginável; útil para drivers de dispositivo do Win32.NoCache
Marca a seção como não armazenáveis em cache; útil para drivers de dispositivo do Win32.Descartar
Marca da seção como descartáveis; útil para drivers de dispositivo do Win32.remover
Marca da seção como não residente na memória; drivers de dispositivo virtual (VxD) somente.
Se você não especifica atributos, a seção terão de leitura e gravação de atributos.
Exemplo
No exemplo a seguir, a primeira instrução identifica a seção e seus atributos.O número inteiro j não é colocada em mysec porque não foi declarado com __declspec(allocate); jvai para a seção de dados.O número inteiro i ir para o mysec como resultado de sua __declspec(allocate) o atributo de classe de armazenamento.
// pragma_section.cpp
#pragma section("mysec",read,write)
int j = 0;
__declspec(allocate("mysec"))
int i = 0;
int main(){}