我在 MSVS2015 的以下代码中使用了 char16_t 类型和 codecvt:
std::u16string utf8_to_tf16(const std::string& str)
{
std::wstring_convert<std::codecvt_utf8_utf16<char16_t>, char16_t> convert;
return convert.from_bytes(str);
}
std::string utf16_to_utf8(const std::u16string& str)
{
std::wstring_convert<std::codecvt_utf8_utf16<char16_t>, char16_t> convert;
return convert.to_bytes(str);
}
编译成功,但联动时出现错误:
错误 LNK2001:未解析的外部符号“__declspec(dllimport)公共:静态类 std::locale::id std::codecvt::id”(__imp_?id@?$codecvt@_SDU_Mbstatet@@@std@@2V0locale@2@一个)
如何修复此错误?