Exception 异常处理:意义和语义

Exception 异常处理:意义和语义,exception,Exception,异常处理:它们实际上做什么 考虑这样一个场景:我正在读取一个文件以进行输入,我想将try/catch文件打开和读取代码放在try/catch子句中。 如果读取文件时出错(文件不存在等),会发生什么情况。代码转到catch块,但是我应该在那里放什么呢 catch块的用途是什么,catch块是否会暂停程序的正常运行,并且程序是否在catch块之后存在 提前感谢您澄清这些疑问 因为您没有提供特定的语言,所以我将作为一般概念来回答 当遇到异常时,代码将跳转到catch块,跳过异常和catch块之间的所有

异常处理:它们实际上做什么

考虑这样一个场景:我正在读取一个文件以进行输入,我想将try/catch文件打开和读取代码放在try/catch子句中。 如果读取文件时出错(文件不存在等),会发生什么情况。代码转到catch块,但是我应该在那里放什么呢

catch块的用途是什么,catch块是否会暂停程序的正常运行,并且程序是否在catch块之后存在


提前感谢您澄清这些疑问

因为您没有提供特定的语言,所以我将作为一般概念来回答

当遇到异常时,代码将跳转到catch块,跳过异常和catch块之间的所有代码


对于你应该在捕获物中放入什么,没有一般的答案。这完全取决于你的具体情况。您通常希望将错误记录在某个地方,然后采取适当的措施。什么是“适当的行动”可能会有很大的不同。如果失败的代码是由用户启动的,您可能希望向用户返回一些错误消息。如果是在夜间工作,你可能想发一封电子邮件提醒某人这个问题,等等。

在大多数语言中,他们的意思不一样吗?不管怎么说,在爪哇,C++和PythonAlso,我都看到过一些类似于OutOfBoo界异常的东西。这个异常是否意味着我们试图访问错误的数组索引。这是否意味着代码有一些错误,好像编写正确一样?不应该再次出现边界外异常Throwns,不确定我们在这里讨论的是哪种语言,但是的,边界外表示您试图访问数组中超出数组边界的项。假设您的数组有3个元素,并且您尝试访问第5个元素,则会引发此异常。一般来说,这是由写得很差的代码引起的。好,让下面的一个具体例子缩小这个C++(这个例子是从一个异常处理教程中获取的)。{{//代码}} catch(int PARAM){cout