Winapi 引发Win32 API包装的异常?

Winapi 引发Win32 API包装的异常?,winapi,visual-c++,wrapper,Winapi,Visual C++,Wrapper,我见过许多Windows API的包装(MFC、ATL、WTL等),但它们似乎都没有使用异常处理——您仍然需要检查大多数函数的错误代码,这很容易忘记(或由于懒惰而忽略) 有没有真正抛出异常而不是返回错误代码的包装器?遇到错误时会引发异常。遇到错误时会引发异常。是的,Winforms、WPF和WinRT也是如此。C++程序员有C类,其中代码库是不例外的安全。就像谷歌。@DavidHeffernan:Hm。。。我在查找下载链接(或者实际的网站)时遇到了一些困难。。。知道网站的位置吗?@Hans:嗯。

我见过许多Windows API的包装(MFC、ATL、WTL等),但它们似乎都没有使用异常处理——您仍然需要检查大多数函数的错误代码,这很容易忘记(或由于懒惰而忽略)


有没有真正抛出异常而不是返回错误代码的包装器?

遇到错误时会引发异常。

遇到错误时会引发异常。

是的,Winforms、WPF和WinRT也是如此。C++程序员有C类,其中代码库是不例外的安全。就像谷歌。@DavidHeffernan:Hm。。。我在查找下载链接(或者实际的网站)时遇到了一些困难。。。知道网站的位置吗?@Hans:嗯。。。这是好事还是坏事?VCL是Delphi和C++ Builder的一部分。你不下载它。@David:LOL,我很惊讶看到Visual Studio问题的VCL答案:-)是的,Winforms、WPF和WinRT也是如此。C++程序员有C类,其中代码库是不例外的安全。就像谷歌。@DavidHeffernan:Hm。。。我在查找下载链接(或者实际的网站)时遇到了一些困难。。。知道网站的位置吗?@Hans:嗯。。。这是好事还是坏事?VCL是Delphi和C++ Builder的一部分。你没有下载它。@David:LOL,我很惊讶看到一个VCL对visualstudio问题的回答:-)结果是你仍然必须捕获异常并对它们做一些处理;catch(…){printf(“oh noes!”);}并不比省略错误检查好多少。无论如何,MFC和ATL偶尔都会使用异常;我想这取决于谁编写了什么类,因为它在整个框架中并不一致。我希望其他框架与之类似,因为抛出异常可能不是每种情况下的最佳方法。@Luke:嗯,你不希望类似于
ListView\u GetItemRect
的方法不成功,因此,我认为最好是让你的代码崩溃,而不是强迫你在任何情况下都处理它;catch(…){printf(“oh noes!”);}并不比省略错误检查好多少。无论如何,MFC和ATL偶尔都会使用异常;我想这取决于谁编写了什么类,因为它在整个框架中并不一致。我希望其他框架与抛出异常类似,这可能不是适合所有情况的最佳方法。@Luke:嗯,你不希望类似于
ListView\u GetItemRect
的东西不成功,所以我认为最好是它使你的代码崩溃,而不是强迫你在任何情况下都处理它。