我听说在 C 中,main() 是可重入的,而在 C++ 中则不是。
这是真的吗?重新进入main()函数是什么场景?
最佳答案
早期的 C++ 实现基于对 C 的转换,通过在 main
的开头添加函数调用来实现全局构造函数。在这样的实现下,再次调用 main
将重新运行全局 ctors,造成严重破坏,因此根本禁止这样做。
另一方面,C 没有理由禁止调用 main
,而且传统上总是可行的。
至于什么时候有用,我会说“很少”。我见过的大多数名为 main
的程序都是 IOCCC 条目。
关于c++ - main() 函数是可重入的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17333848/