Why is explicitly returning 0 from main() considered good practice?
Possible Duplicate:
return statement vs exit() in main()
我刚读了《加速C++》的第一章(好像是一本很棒的书),作者最后说。
However, explicitly including a return from main is good practice.`
为什么这被认为是良好的做法?在c99中,我总是省略
有几个原因,
首先,main声明返回int,因此它应该
其次,更重要的是,Cmain的主从会跳过主对象实例的调用析构函数。
在C99和C++中,如果程序的执行达到EDCOX1×1函数的闭合支撑,则执行隐式
我只能猜测,"加速C++"的作者认为,明确的回报是好的实践,仅仅是因为它使你的意图明确。我唯一能想到的另一个原因是它使代码与C90兼容,但我发现很难相信这会成为一个很重要的原因。
我认为这种经验法则不太适用于调用
我猜
调用程序(通常是OS shell)可以收集返回代码并知道程序是否失败。
从程序中只有一个出口点是放置断点的好地方。
如果您不熟悉某个程序,那么拥有单一的执行流可以更容易地执行它。
通过C++标准MIN()应该返回int。这是一个错误代码应用程序在它的终止时返回,在实践中,这是有用的,当调用进程想要知道这个应用程序是否以成功终止(通常错误代码是在这种情况下为0)或者它失败了。
我将给出一个特定于Microsoft的示例,但它显示了返回错误代码的一般需要:processa需要创建processb并等待它终止,然后检查processb是否成功执行。ProcessA将使用CreateProcess函数创建ProcessB,然后使用ProcessB的句柄等待其终止,然后使用GetExitCodeProcess函数获取ProcessB终止代码-这是从main()返回的int值。