本文介绍了如何使用std :: system_error与GetLastError?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如果我调用一个Win32函数通过GetLastError报告错误,例如,如何为该错误抛出std :: system_error?

解决方案

对 c> GetLastError() );
std :: error_code ec(dwErrVal,std :: system_category());
throw std :: system_error(ec,Exception occurred);

查看为 error_code 和 std :: system_error


If I call a Win32 function that reports errors via GetLastError, for example RegisterClassEx, how do I throw a std::system_error for that error?

解决方案

Check on the value of GetLastError() like

DWORD dwErrVal = GetLastError();
std::error_code ec (dwErrVal, std::system_category());
throw std::system_error(ec, "Exception occurred");

See here for error_code and here for std::system_error.

这篇关于如何使用std :: system_error与GetLastError?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

07-23 12:45