comment (C/C++)
Insere um registro de comentário em um arquivo de objeto ou o arquivo executável.
#pragma comment( comment-type [,"commentstring"] )
Comentários
O tipo de comentário é um dos identificadores predefinidos, descritos abaixo, que especifica o tipo de registro de comentário.Opcional commentstring é uma seqüência literal que fornece informações adicionais para alguns tipos de comentário.Porque commentstring é uma seqüência de caracteres literal, obedeça a todas as regras para literais de seqüência de caracteres com relação a caracteres de escape, as aspas internas (") e concatenação.
compilador
Coloca o nome e número de versão do compilador no arquivo do objeto.Este registro de comentário é ignorado pelo vinculador.Se você fornecer um commentstring parâmetro para esse tipo de registro, o compilador gera um aviso.exestr
Locais de commentstring no arquivo do objeto.No momento de link essa seqüência de caracteres é colocada no arquivo executável.A seqüência de caracteres não é carregada na memória quando o arquivo executável é carregado; No entanto, ele pode ser encontrado com um programa que localiza seqüências de caracteres imprimíveis nos arquivos.Um uso para este tipo de registro de comentário é incorporar um número de versão ou informações semelhantes em um arquivo executável.exestrfor preterido e serão removidos em uma versão futura; o vinculador não processa o registro de comentário.
lib
Coloca um registro de pesquisa de biblioteca no arquivo do objeto.Esse tipo de comentário deve ser acompanhado por um commentstring parâmetro que contém o nome (e possivelmente o caminho) da biblioteca que você deseja que o vinculador procure.O nome da biblioteca segue os registros de pesquisa de biblioteca padrão no arquivo de objeto; o vinculador procura nesta biblioteca, como se tivesse nomeá-la na linha de comando desde que a biblioteca não está especificada com /nodefaultlib.Você pode colocar vários registros de pesquisa de biblioteca no mesmo arquivo de origem. cada registro é exibida no arquivo do objeto na mesma ordem em que ele for encontrado no arquivo de origem.Se a ordem de biblioteca padrão e uma biblioteca adicional for importante, compilando com o /Zl opção impedirá que o nome da biblioteca padrão que está sendo colocado no módulo de objeto.Em seguida, um segundo pragma de comentário pode ser usado para inserir o nome da biblioteca padrão após a biblioteca adicional.As bibliotecas listadas com esses pragmas aparecerão no módulo de objeto na mesma ordem em que eles são encontrados no código fonte.
vinculador
Locais de um opção de vinculador no arquivo do objeto.Você pode usar esse tipo de comentário para especificar uma opção de vinculador em vez de transmiti-lo à linha de comando ou a especificação no ambiente de desenvolvimento.Por exemplo, você pode especificar o / a incluir a opção para forçar a inclusão de um símbolo:#pragma comment(linker, "/include:__mySymbol")
Apenas o seguinte (tipo de comentário) opções de vinculador estão disponíveis a serem passados para o identificador do vinculador:
usuário
Coloca um comentário geral no arquivo do objeto.O commentstring parâmetro contém o texto do comentário.Este registro de comentário é ignorado pelo vinculador.
O pragma seguinte faz com que o vinculador procurar o EMAPI.Biblioteca ao vincular LIB.O vinculador primeiro procura no diretório de trabalho atual e, em seguida, no caminho especificado na variável de ambiente LIB.
#pragma comment( lib, "emapi" )
O pragma seguinte faz o compilador colocar o nome e número de versão do compilador no arquivo do objeto:
#pragma comment( compiler )
Observação |
---|
Para os comentários que o levam um commentstring parâmetro, você pode usar uma macro em qualquer lugar onde você usaria um literal de seqüência de caracteres, desde que a macro se expande para uma seqüência de caracteres literal.Você pode também concatenar qualquer combinação de literais de seqüência e macros que se expandem para literais de seqüência de caracteres.Por exemplo, a instrução a seguir é aceitável: |
#pragma comment( user, "Compiled on " __DATE__ " at " __TIME__ )