相关疑难解决方法(0)

C++错误处理 - 示例代码的良好来源?

几乎所有代码示例代码都忽略了错误处理(因为它"混淆了示例代码正在解决的问题").我的编程知识主要来自书籍和网站,你很少在那里看到任何错误处理,更不用说好东西了.

哪些地方可以看到C++错误处理代码的好例子?特定的书籍,特定的开源项目(最好具有要查看的文件和功能)以及特定的网页或网站都将被感激地接受.

c++ error-handling

29
推荐指数
3
解决办法
3万
查看次数

例外和错误代码:以正确的方式混合它们

我正在开发一个C++加密狗通信库.该库将提供一个统一的接口,以与一系列远程代码执行加密狗(如SenseLock,KEYLOK,Guardant Code)进行通信.

加密狗基于智能卡技术,具有内部文件系统和RAM.

典型的操作例程包括(1)枚举连接到USB端口的加密狗,(2)连接到所选择的加密狗,(3)执行命名模块传递输入和收集输出数据.

嗯,所有这些阶段最终都会出错,这是微不足道的.可能有很多情况,但最常见的是:

  • 找不到加密狗(肯定是一个致命的案例).
  • 加密狗连接失败(致命案例).
  • 在加密狗(?)中找不到指定的执行模块.
  • 请求的操作因超时(?)而失败.
  • 请求的操作需要授权(我认为是可恢复的案例).
  • 在加密狗中执行模块时发生内存错误(肯定是致命的情况).
  • 加密狗中发生文件系统错误(肯定是致命的情况).

? - 我不知道案件是否被认为是致命的.

我仍在决定是否抛出异常,返回错误代码,或为两种情况实现方法.

问题是:

  1. 异常是否完全替换了错误代码,或者我只需要将它们用于"致命案例"?
  2. 混合两种范例(例外和错误代码)被认为是一个好主意吗?
  3. 为用户提供两种概念是否是个好主意?
  4. 混合概念的异常和错误代码是否有任何好的例子?
  5. 你会如何实现这个?

更新1.

从不同的角度看更多意见会很有意思,所以我决定在这个问题上增加100点声望.

c++ error-handling exception

25
推荐指数
6
解决办法
7400
查看次数

标签 统计

c++ ×2

error-handling ×2

exception ×1