草庐IT

circuit_breaking_exception

全部标签

PHP - 将一个额外的参数(变量)传递给 set_exception_handler

有什么方法可以将变量传递给PHP中的set_exception_handler()方法吗?我需要这样的东西:classClazz{public/*static*/functionfoo(){set_exception_handler(array('Clazz','callback'),$var);//Ineedtopass$var//orthisinnon-staticcontext$that=$this;set_exception_handler(array($that,'callback'),$var);//Ineedtopass$var}publicstaticfunctionc

java - Slf4j with Log4j 在wrapper exception有消息时不打印wrapped exception (caused by)

第一个例子:publicclassMain{privatestaticfinalLoggerlogger=LoggerFactory.getLogger(Main.class);publicstaticvoidmain(String[]args)throwsException{try{thrownewRuntimeException(newNullPointerException("NPE"));}catch(RuntimeExceptione){logger.error("Error:",e);}}}输出:Error:java.lang.RuntimeException:java.l

java - 在不使用 break 的情况下跳出嵌套的 for 循环

我的项目终于完成了,但我唯一的问题是我的老师不接受我们代码中的“中断”。有人可以帮我解决这个问题吗,我已经研究了好几天了,如果不使用它们,我似乎无法让程序运行。中断位于我的DropYellowDisk和DropRedDisk方法中。除了那个问题,我的connect4程序是完美无缺的。privatestaticvoidDropYellowDisk(String[][]grid){intnumber=0;Scannerkeyboard=newScanner(System.in);System.out.println("Dropayellowdiskatcolumn(1–7):");intc

c++ - 无法通过引用 std::exception 捕获从 std::exception 派生的类

我创建了一个派生自std::exception的自定义异常类。#includeclassException:std::exception{public:constchar*what()constnoexceptoverride{return"test";}};intmain(){try{throwException();}catch(std::exception&e){std::cout此程序在Ubuntu上由g++-stdc++=17编译时,导致异常未被catchblock捕获,即使按引用捕获也应该捕获派生异常。它调用std::terminate,即使它发生在通过引用捕获其基类的tr

c# - 什么是异常(exception)?

我们每天都在谈论异常处理。我们都知道它是在执行过程中遇到一些意想不到的情况而产生的。这里有几个问题:什么是异常?它最低级的内存组成是什么?在.NET中,我可以将其视为某种异常类型的对象实例。在本土世界,它是由什么制成的?一些数据结构?如果程序员没有明确抛出异常,那么谁来创建异常,如下面的代码所示?它是某些语言运行时提供的支持的一部分吗?SomeExceptione=newSomeException();扔e;异常工作范式是什么?当发生某些错误时,语言运行时会创建相应数据结构/类型的实例来表示错误的详细信息,这是真的吗?我们如何知道运行时所有可能的意外情况,从而创建足够的异常数据结构/类

c++ - 如何使用 break 语句停止内循环和外循环

这个问题在这里已经有了答案:CanIusebreaktoexitmultiplenested'for'loops?(23个回答)关闭7年前。我有非常简单的代码,我在内部循环中使用break:for(intit=0;it我收到一个输出:it=0it2=0,it=0it2=1,it=1it2=0,it=1it2=1,it=2it2=0,it=2it2=1,it=3it2=0,it=3it2=1,it=4it2=0,it=4it2=1我知道在某些程序语言中有可能确定哪个循环中断语句应该影响。是否可以调用break来停止外部循环(for和it变量)?

c++ - 为什么 C++ std::exception::what 成员常量?

我很好奇为什么std::exception::what成员函数是const?classexception{public:exception()throw(){}virtual~exception()throw();/**ReturnsaC-stylecharacterstringdescribingthegeneralcause*ofthecurrenterror.*/virtualconstchar*what()constthrow();}; 最佳答案 调用what()成员函数不应修改exception对象的可观察状态。通常,异常

c++ - 除了重新抛出 std::exception_ptr 之外,我还能做什么

我有一个std::exception_ptr类型的对象,我想在它上面调用what(),但似乎没有办法做到这一点(如本答案中所述:HowdoImakeacalltowhat()onstd::exception_ptr)。在互联网上搜索后,似乎除了重新抛出它并在std::exception&中捕获它之外我无法对它做任何事情。这对我来说有点奇怪,但我想检查一下:std::exception_ptr可以做什么,然后重新抛出它以获得期望的细节?C++14或其他版本的C++有什么变化 最佳答案 不幸的是,没有。该标准仅保证std::except

C++ 概念精简版 : Short-circuiting in concept bodies

我正在尝试了解尚未合并到标准中的ConceptsLiteTS。我对概念体中短路析取的行为感到困惑。这是一个小例子:#include#includetemplateconceptboolmyconcept=(sizeof...(Ts)==0)||(std::is_same_v>);templatevoidmyfunc(Ts...args)requiresmyconcept{(...,(std::cout用gcc7.1和-fconcepts编译,给出错误:error:cannotcallfunction'voidmyfunc(Ts...)requiresmyconcept[withTs={

c++ - 我如何从 boost::errinfo_nested_exception 中提取任何信息?

我最近开始使用boost::exception。现在我想使用boost::errinfo_nested_exception打印有关错误原因的信息。问题是我无法弄清楚如何从原因中获取信息。我尝试了以下但没有成功:#include#includestructmyex:publicvirtualboost::exception{};intmain(){myexcause;cause(e);//Icantdothis://conststd::string*file=boost::get_error_info(*c);//Northis://conststd::string*file=boost