使用代码进行异常.有用?

Tow*_*wer 6 php exception

我不确定异常是否在每种语言中以相同的方式工作,但我使用的是PHP,我想知道我什么时候做这样的事情:

if (!$this->connection[0]->query($this->query))
 throw new QueryFailedException($this->connection[0]->error);
Run Code Online (Sandbox Code Playgroud)

是否需要在第二个参数中提供代码?例如:

if (!$this->connection[0]->query($this->query))
 throw new QueryFailedException($this->connection[0]->error,123);
Run Code Online (Sandbox Code Playgroud)

现在代码是123 ...我想不出这个需要.有吗?在这种情况下,消息包含查询,异常名是QueryFailedException这也解释了异常类型,本身包含的文件,线和堆栈跟踪的异常,所以,我想不出任何东西,你可以使用代码一些有用的东西.

Lea*_*ash 14

错误代码是在没有面向对象语言时使用的功能.唯一可以帮助您理解错误的是错误代码.在面向对象的语言中,对象是您的错误代码.除非在特定情况下,不止一件事可以抛出完全相同的错误,并且它们会以不同的方式处理,请删除它.此外,如果您留下消息而不是无意义的错误代码,您可以为调试代码的人提供更好的解释,因此如果您觉得异常需要更多信息,请填写错误消息字段.


Mit*_*ers 10

错误代码是一个可用于提供更详细信息的字段.例如,如果您有两件事可以生成相同的异常,则可以使用代码提供更多详细信息.