通常情况下,如果一个应用在调试模式下可以运行但是在发布模式下不能运行,那么这很可能是由于某些变量或内存没有被正确地设置为初始值。 在调试版本中,变量和内存通常会被设置为零,但在发布版本中,为了节省时间,这一步骤会被跳过。此外,额外的数据也会被添加到对象和分配的内存周围作为屏障来检测内存覆盖。 有时(非常少见),发布版本中的优化会引入错误。