- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
在 Win 7 64 位和 VS2010 上 boost 1.54 x64。编译为“Release x64”并运行以下代码:
#include <boost/locale/conversion.hpp>
std::wstring y = L"NoNseNSE";
std::wstring w = boost::locale::to_lower(y);
抛出 std::bad_cast
异常。即使添加后也没有任何变化(如其他地方所建议的):
std::locale mylocale("");
std::locale::global(mylocale);
或将 to_lower(y)
更改为:to_lower(y, mylocale)
或使用 std::string
而不是 std::wstring
或在环境中设置 LANG。
目标是转换为小写意大利语 UTF-8 单词。我没有发现这样的问题,所以我认为这是我的机器特定问题或 boost 库问题。顺便说一句,我已经从 sourceforge 下载了预编译的 boost 库 (boost_1_54_0-msvc-10.0-64.exe)。任何的想法?谢谢!马里奥
最佳答案
当您的区域设置传递给 boost::locale::to_lower
(默认情况下 std::locale()
,这是全局的拷贝时,将抛出此异常locale) 没有安装 boost::locale::converter
facet。 See this for the related documentation.
使用 boost::locale::generator
来创建语言环境。 (另请参阅文档链接到的示例,例如 this one。)
关于c++ - boost::locale::to_lower 抛出 bad_cast 异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19751189/
我正在根据 boost-locale 页面 http://www.boost.org/doc/libs/1_50_0/libs/locale/doc/html/conversions.html 尝试使
在 Win 7 64 位和 VS2010 上 boost 1.54 x64。编译为“Release x64”并运行以下代码: #include std::wstring y = L"NoNseNSE
如何编写(英特尔)F90 函数将字符串转换为小写(或大写)?我想将一个字符数组传递给函数并让它返回一个字符数组,例如 program main implicit none charac
我尝试在我的代码中使用 boost 库,但在 Sparc Solaris 平台下出现以下链接器错误。 问题代码本质上可以概括为: #include std::string xparam; ... x
我是一名优秀的程序员,十分优秀!