编译c ++ dll时要选择哪个字符集

时间:2009-01-19 13:48:32

标签: c++ character-encoding

有人可以提供有关visual studio项目属性表中不同字符集的一些信息。

选项包括:

Unicode的
多字节

我想就哪个选择做出明智的决定 感谢。

3 个答案:

答案 0 :(得分:7)

所有新软件都应启用Unicode。对于那些意味着UTF-16字符集的Windows应用程序,对于其他所有人来说,UTF-8通常是最佳选择。 Windows编程中的其他字符集选择仅应用于与旧应用程序的兼容性。它们不支持与Unicode相同的字符范围。

答案 1 :(得分:1)

Multibyte每个字符只需要2个字节,none正好为1,unicode会有所不同。

None不好,因为它不支持非拉丁符号。如果一些非英语用户试图将他们的名字输入编辑框,那就太无聊了。请勿使用none

如果不使用字符串长度的自定义计算,从程序员的角度multibyteunicode只要使用use TEXT宏来包装字符串常量,就没有区别。

某些库明确要求某些编码(DirectShow等),只需使用他们想要的内容。

答案 2 :(得分:1)

正如Shiny先生所建议的那样,Unicode是正确的。 如果您想更多地了解该决定的含义,请查看此处:http://www.mihai-nita.net/article.php?artID=20050306b