C++ 正在寻找翻译应用程序的方法

C++ 正在寻找翻译应用程序的方法,c++,windows,localization,C++,Windows,Localization,我正在开始设计一个应用程序,我希望它从一开始就支持多种语言,以避免以后为了启用多种语言而不得不更改大量代码 我很早就编写了一个C应用程序,它的消息在一个结构中,因此我有几个带有翻译字符串的头文件,这些头文件将集成到应用程序本身中,因此要添加一种新的语言,我必须重新编译 我想要的是能够有一个本地化系统,允许我翻译应用程序并添加新的语言,而无需重新编译应用程序。理想情况下,翻译和测试翻译的方法非常简单(比如编辑文本文件并在应用程序中查看结果),而无需依赖第三方工具进行翻译 我正在考虑为它编写自己的系

我正在开始设计一个应用程序,我希望它从一开始就支持多种语言,以避免以后为了启用多种语言而不得不更改大量代码

我很早就编写了一个C应用程序,它的消息在一个结构中,因此我有几个带有翻译字符串的头文件,这些头文件将集成到应用程序本身中,因此要添加一种新的语言,我必须重新编译

我想要的是能够有一个本地化系统,允许我翻译应用程序并添加新的语言,而无需重新编译应用程序。理想情况下,翻译和测试翻译的方法非常简单(比如编辑文本文件并在应用程序中查看结果),而无需依赖第三方工具进行翻译

我正在考虑为它编写自己的系统,例如,可能基于包含翻译的文件的XML,但我想知道是否有人有这方面的经验,并会推荐一个轻量级的库来提供我想要的(即使翻译没有编辑文本文件那么直接)。我强调轻量级,因为我认为应用程序本身的重量不会超过几兆字节


如果与此相关的话,它将是一个Windows应用程序。到目前为止,我还没有决定使用什么图形工具包,但我可能会使用默认的Windows,而不使用跨平台工具包(如wxWidgets、Qt、GTK+,…)。但这并不是一成不变的,如果有人认为它有显著的优势。

< P>我不知道轻量化是什么,但是.</P>
然后,您可以使用来简单地翻译文本。

我不确定它的轻量级,但是


然后你可以用它来简单地翻译你的文本。

不要发明你自己的系统。国际化(i18n)和本地化(l10n)几乎总是包含在一些现有库中


如果您为Windows开发,此链接可能会很有用。

不要发明您自己的系统。国际化(i18n)和本地化(l10n)几乎总是包含在一些现有库中


如果你是为Windows开发的,这个链接可能会很有用。

他似乎在做C/C++而不是。net有很多库可供选择,但在某些情况下,选择一个并使其工作起来比编写一个基本的词典系统更难。@claptrap是一个框架,而不是一种语言。您可以从几种语言中访问.NET,C++。其他的。@返回TalZAN,启动自己的库总是更容易,当然更有趣。但在足够成熟之前维持它需要大量资源。所以,你是对的,在任何情况下,选择一个合适的库都需要努力,但在那之后,几乎总是会有回报的。谢谢你的回答,我将通读这些文档。起初我想写我自己的,但由于我不精通这件事,我真的很重视你的意见。他似乎在做C/C++而不是。net有很多库可供选择,但在某些情况下,选择一个并使其工作起来比编写一个基本的字典系统更难。@claptrap是一个框架,而不是一种语言。您可以从几种语言中访问.NET,C++。其他的。@返回TalZAN,启动自己的库总是更容易,当然更有趣。但在足够成熟之前维持它需要大量资源。所以,你是对的,在任何情况下,选择一个合适的库都需要努力,但在那之后,几乎总是会有回报的。谢谢你的回答,我将通读这些文档。起初我想写我自己的,但由于我不精通这件事,我真的很重视你的意见。这取决于你要使用哪个GUI工具包。实际上,它们都有国际化和本地化支持。指定工具包,您将得到答案。哦,我明白了,我想我将使用Windows提供的本机GUI,而不使用任何跨平台工具包,但它不是一成不变的。这取决于您将使用哪个GUI工具包。实际上,它们都有国际化和本地化支持。指定工具箱,您将得到一个答案。哦,我明白了,我想我将使用Windows提供的本机GUI,而不使用任何跨平台工具箱,但它不是一成不变的。谢谢您的答案,我将研究它。谢谢您的答案,我将研究它。