有a few SO posts关于是否声明main()
使用函数尝试块语法是valid syntax,并且普遍的共识似乎是它是完全有效的。这让我想知道...是否有任何理由(性能,风格,线程同步,多线程)为什么一个不会使用此语法作为main()
作为一般规则以更优雅地捕获任何未处理的异常?为什么不使用function-try-block声明main()?
显然,理想情况下不会有未处理的异常,但是它们发生了,我认为提供比操作系统特定的默认处理程序更丰富的信息会更好。例如,就我而言,我想为用户提供支持电子邮件地址,以便他们可以报告崩溃并让我的程序向我的基于云的崩溃日志提交日志。
对于初学者,您可以在普通函数体中使用普通的try/catch,而不会混淆不知道此语法的人。 –
与简单的try/catch相比有什么优势 – 2017-10-16 19:58:29
函数try块主要用于构造函数,因此您可以捕获在初始化程序列表中抛出的异常。 –