这个问题是关于Windows的C ++库,我们使用Visual C ++作为编译器。
我们在库中启用异常处理编译器选项。我们还在一些地方使用throw / catch。
我们的一位客户说他们在应用程序中禁用了异常处理选项。现在的问题是,如果他们在我们的应用程序中使用我们的库,他们是否会遇到任何问题。
答案 0 :(得分:0)
如果任何异常可以从您的库中发出而不是确实可能会有问题。考虑您的库是否抛出了未捕获的异常,然后再传播回应用程序。由于应用程序不支持异常,因此不知道如何处理它,并且很可能行为不正确。如果你很幸运,它会崩溃而不是默默地以一种模糊的方式失败。
如果您在库内部捕获所有异常并仅使用返回代码向外界发出问题,则事情可能会正常(注意这意味着公共API类的构造函数不能抛出,而抛出是唯一的他们可以报告问题的方式。)