我不能让 Boost.Locale 翻译。请帮忙。
代码示例:
boost::locale::generator gen;
// Specify location of dictionaries
gen.add_messages_path(".");
gen.add_messages_domain("messages");
// Generate locales and imbue them to iostream
std::locale::global(gen(""));
std::cout.imbue(std::locale());
// Generate ru locale
std::locale ru = gen("ru");
std::cout << boost::locale::translate("Hello World!").str(ru);
我的编译messages.mo
文件位于项目根目录中:ru/LC_MESSAGES/messages.mo
messages.mo 是使用编译的 msgfmt messages.po
内容messages.po
:
msgid "Hello World!"
msgstr "Привет!"
什么都没有翻译...为什么?