如何用C++制作多语言程序

How can I make multi-language program with C++

我想为 C++ 程序创建类似于 Android 的多语言功能。

我有文件 language.xml 和语言-us.xml,如果用户的语言是美国,那么 lang_variable 正在搜索语言-us.xml,如果没有找到则在 language.xml 中使用关键字。在代码中我想访问语言变量,例如:R.string.lang_variable.

语言文件可以不要xml,我只想做多语言

谢谢解答!

这可以通过使用查找 table 轻松完成。

任何需要翻译的短语都会被分配一个 ID 值。

每种语言都有 table 个 ID vs. text,可以像文本数组一样简单。

每种支持的语言都有一个 ID。对于每种支持的语言, 语言 ID 与语言 Table 有一个 table。

因此,首先获取语言 ID 并获取给定语言的翻译 table。
接下来,使用短语或文本 ID 从语言 table 中获取短语。

这实际上与 C++ 语言没有任何关系。

此外,使用可以支持所有必需编码的字符类型,例如多字节或 Unicode。

编辑 1:电子表格
我们使用包含语言 ID(第一列)和不同语言的翻译文本(每种语言是一个单独的列)的电子表格。然后我们有一个自定义应用程序将电子表格转换为适当的 tables(如上所述)。