UG\NX二次开发 使用throw重新抛出异常

文章作者:里海
来源网站:https://blog.csdn.net/WangPaiFeiXingYuan


简介:

        在异常处理代码中,可以使用 throw 关键字来抛出异常。如果希望在捕获异常后重新抛出该异常,可以使用类似以下的代码:
        在 catch 块中,先对异常进行处理,例如记录日志、修复问题等。然后使用 throw 关键字将异常重新抛出,让上层的异常处理代码继续处理该异常。
在重新抛出异常时,可以使用 throw ex 将原始异常对象重新抛出。如果捕获的异常是一个引用,例如 exception& ex,则可以直接使用 throw 重新抛出该异常,不需要使用 throw ex。
        需要注意的是,如果在 catch 块中对异常进行了处理,例如修复了问题,那么在重新抛出异常时应该使用一个新的异常对象,而不是直接使用原始的异常对象。否则,在捕获异常时可能会因为已经处理过该异常而无法正确地处理该异常。

 代码:

void Edit()
{
	try
	{
        xxx
	}
	catch (exception& ex)
	{
		//写入日志
		UF_print_syslog(ex.what(), TRUE);
        //继续向上抛出        
        throw;
	}
}

猜你喜欢

转载自blog.csdn.net/WangPaiFeiXingYuan/article/details/131813993
今日推荐