什么是从std :: fstreams中以可移植的方式获取有意义的文件访问错误消息的最佳方法?
badbits
和failbits
的原始程度有点令人烦恼。我之前针对win32和POSIX编写过自己的异常层次结构,那比STL的方式要灵活得多。
我从启用了异常的fstream
的downcasted catch (std :: exception
)的what
方法中得到“basic :: ios_clear”作为错误消息。这对我来说并没有太大意义,虽然我知道问题所在,但我希望我的程序能够更具信息性,这样当我几个月后开始部署时会更轻松。
Boost中是否存在任何内容可以跨平台和跨STL实现从fstream
的实现中提取有意义的消息?