Partilhar via


Habilitação internacional

A maioria de código tradicional de 2.0 C e C++ fazer suposições sobre a manipulação de caractere e de cadeia de caracteres que não funcionam bem para aplicativos internacionais. Quando o MFC e a biblioteca de tempo de execução) Unicode ou MBCS, ainda há um trabalho para que você faça. Para guiá-lo, esta seção explica o significado de “international habilitando” no Visual C++:

  • Unicode e MBCS são habilitados por meio dos tipos de dados portáteis em listas e em tipos de retorno de parâmetro de função de MFC. Esses tipos são definidos condicional de maneira apropriada, dependendo se sua compilação define o símbolo _UNICODE ou o símbolo _MBCS (o que significa DBCS). As variantes diferentes das bibliotecas de MFC são vinculadas automaticamente com o aplicativo, dependendo de qual desses dois símbolos define sua compilação.

  • O código de biblioteca de classe usar funções portáteis de tempo de execução e outros meios garantir Unicode correto ou o comportamento de MBCS.

  • Você ainda deve tratar determinados tipos de tarefas da internacionalização em seu código:

    • Use as mesmas funções portáteis de tempo de execução que fazem a MFC inferior portátil um ou outro ambiente.

    • Faça cadeias de caracteres literais e caracteres inferior portátil um ou outro ambiente, usando a macro de _T . Para obter mais informações, consulte Mapeamentos de Genérico- texto em Tchar.h.

    • Tome precauções ao analisar cadeias de caracteres em MBCS. Essas precauções não são necessárias em Unicode. Para obter mais informações, consulte MBCS programa que dicas.

    • Cuidado se você mescla ANSI (8 bits) e caracteres (16 bits) Unicode em seu aplicativo. É possível usar caracteres ANSI em algumas partes de seu programa e caracteres Unicode em outro, mas você não pode misturá-los na mesma cadeia de caracteres.

    • Não tornam as cadeias de caracteres de duro- código no seu aplicativo. Em vez disso, faça-lhes recursos de STRINGTABLE adicionando ao arquivo de .rc do aplicativo. Seu aplicativo pode ser localizado sem exigir alterações ou recompilação do código-fonte. Para obter mais informações sobre os recursos de STRINGTABLE, consulte Editor da cadeia de caracteres.

Dica

O europeu e os conjuntos de caracteres de MBCS têm alguns caracteres, como letras acentuadas, com os códigos de caracteres maiores que 0x80.Como a maioria de código usa caracteres assinados, esses caracteres maiores que sinal- 0x80 estendidos são convertidos quando a int.Esse é um problema para a indexação da matriz como os caracteres sinal- estendidos, sendo negativo, índices fora da matriz.Os idiomas que usam MBCS, como japonês, também são exclusivos.Como um caractere pode ter de 1 ou 2 bytes, você sempre deve manipular os dois bytes ao mesmo tempo.

Consulte também

Conceitos

Unicode e MBCS

Estratégias de internacionalização