我有一个Windows dll抛出std::system_error
类别std::system_category()
。
如果他们被困在dll中,没问题我可以将它们与std::error_condition'
进行比较。但是,如果我抓住我的exe链接到dll,那么比较总是失败,因为该上下文中的std::system_category()
不= =被捕获异常中的那个。
我很难理解这是否有效,是否有错误,或者是否应该支持?
dll和exe都链接到CRT的相同dll版本。
另外,如果dll和exe链接到CRT的静态版本,我想这不会起作用吗?
我读过this description of std::system_category,(强调我的):
获取对 static 错误类别对象的引用以获取错误 由操作系统报告。
答案 0 :(得分:2)
这是Visual C ++ 2013中的一个错误。它在Visual C ++ 2015中得到修复。