This commit is contained in:
Xargin 2017-07-19 19:09:55 +08:00
commit 085771255c

View File

@ -5,7 +5,7 @@
还有一部分函数只要输入的参数满足一定条件也能保证运行成功。比如time.Date函数该函数将年月日等参数构造成time.Time对象除非最后一个参数时区是nil。这种情况下会引发panic异常。panic是来自被调函数的信号表示发生了某个已知的bug。一个良好的程序永远不应该发生panic异常。 还有一部分函数只要输入的参数满足一定条件也能保证运行成功。比如time.Date函数该函数将年月日等参数构造成time.Time对象除非最后一个参数时区是nil。这种情况下会引发panic异常。panic是来自被调函数的信号表示发生了某个已知的bug。一个良好的程序永远不应该发生panic异常。
对于大部分函数而言永远无法确保能否成功运行。这是因为错误的原因超出了程序员的控制。举个例子任何进行I/O操作的函数都会面临出现错误的可能只有没有经验的程序员才会相信读写操作不会失败是简单的读写。因此,当本该可信的操作出乎意料的失败后,我们必须弄清楚导致失败的原因。 对于大部分函数而言永远无法确保能否成功运行。这是因为错误的原因超出了程序员的控制。举个例子任何进行I/O操作的函数都会面临出现错误的可能只有没有经验的程序员才会相信读写操作不会失败使是简单的读写。因此,当本该可信的操作出乎意料的失败后,我们必须弄清楚导致失败的原因。
在Go的错误处理中错误是软件包API和应用程序用户界面的一个重要组成部分程序运行失败仅被认为是几个预期的结果之一。 在Go的错误处理中错误是软件包API和应用程序用户界面的一个重要组成部分程序运行失败仅被认为是几个预期的结果之一。