我不太明白为什么我们需要区分错误代码(std::error_code)
和一个错误condition(std::error_condition)
,它们不是同一个东西吗?错误条件与错误代码相比有哪些优点?
From http://en.cppreference.com/w/cpp/error/error_condition http://en.cppreference.com/w/cpp/error/error_condition
std::error_condition
是与平台无关的错误代码。喜欢std::error_code
,它由一个整数值和一个唯一标识std::error_category
,但不同于std::error_code
,该值不是
平台相关。
因此,优点是您的错误代码并不特定于您使用时所使用的平台std::error_condition
.
With an std::error_code
Each std::error_code
对象保存一对错误代码
来自操作系统或一些低级接口
So, the error_code
将引用特定于您的平台、硬件等的内容。
两者同时使用可能会更有利。这error_condition
是“可移植的抽象”,因此将是提供给用户的通用错误消息和error_code
将是对特定调试有用的平台相关信息。
一个典型的实现[error_condition
] 保存一个整数数据成员(值)并且
指向一个的指针std::error_category
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)