Suporte a Unicode no compilador e vinculador
Este tópico descreve o suporte a Unicode nas ferramentas de compilação do Visual C++.
Nomes de arquivos
Nomes de arquivo especificado na linha de comando e no compilador diretivas (como # include) podem agora conter caracteres Unicode. Nas versões anteriores do Visual C++, somente os nomes de arquivo ANSI eram suportados. Caracteres não-ASCII devem ser evitados em nomes de arquivo de saída para que um executável pode ser executado em versões localizadas do Windows 98 e Windows Me.Arquivos de código-fonte
Agora há suporte para caracteres Unicode em identificadores, macros, literais de seqüência de caracteres e o caractere e nos comentários. Agora também há suporte para nomes de caracteres universais.Unicode pode ser inserido em um arquivo de código-fonte em que as seguintes codificações:
UTF-16 little endian com ou sem marca de ordem de byte (BOM)
UTF-16 big endian com ou sem BOM
UTF-8 com BOM
Output
Durante a compilação, o compilador gera diagnósticos para o console em UTF-16. Os caracteres que podem ser exibidos no seu console dependem das propriedades de janela do console. Redirecionado para um arquivo de saída do compilador está na página de código atual do console ANSI.Arquivos de resposta do vinculador e.Arquivos de definição
Arquivos de resposta e DEF pode ser tanto UTF-16, com uma marca de ordem de Byte ou ANSI. Anteriormente havia suporte para apenas ANSI.despejos de .asm e .cod
despejos de .asm e .cod são ANSI, por padrão para compatibilidade com MASM. Use /FAu para a saída UTF-8. Observe que, se você especificar /FAs, a fonte entremeada apenas ser impresso diretamente e pode parecer ilegível, por exemplo, se o código-fonte é UTF-8 e você não especificar o /FAsu.
Você pode ativar os nomes de arquivo Unicode no ambiente de desenvolvimento (consulte Como: Abrir páginas de propriedades do projeto), selecionando a ferramenta apropriada e selecionando o Habilitar arquivos de resposta Unicode propriedade, que é ativada por padrão. Um motivo, que você pode alterar esse padrão é se você modificar o seu ambiente de desenvolvimento para usar um compilador que não tenha Unicode suporte.