C++ 程序没到断点就 crash,为什么?

题目描述

一个 C++ 程序,调试时在 main 函数第一行打断点,run 起来以后,没到断点就 crash 了。
有什么原因可能引起这个问题?

题目来源及自己的思路

这是我在面试今日头条上海,遇到的一道题目,完全没思路。

大佬教我


POPMUISE
浏览 626回答 2
2回答

PIPIONE

既然在main第一行都没run起来,我想是不是在第一行之前发生了错误?比如以下代码,你在main第一行cout打断点,没到断点就会crash,因为在mian函数之前,先执行了全局变量的构造函数。我简单想了一下,这也算个原因吧。应该还有一些别的原因会造成,看看别的大神怎么说。

GCT1015

#include&nbsp;<iostream>using&nbsp;namespace&nbsp;std;class&nbsp;B{public:&nbsp;int&nbsp;x; };class&nbsp;A{public:&nbsp;A(); }; A::A() { &nbsp;&nbsp;&nbsp;&nbsp;B&nbsp;*b&nbsp;=&nbsp;new&nbsp;B();&nbsp;&nbsp;&nbsp;&nbsp;delete&nbsp;b;&nbsp;&nbsp;&nbsp;&nbsp;cout&nbsp;<<&nbsp;b->x; } A&nbsp;a;int&nbsp;main(){&nbsp;&nbsp;&nbsp;&nbsp;cout&nbsp;<<&nbsp;"hello"; }
打开App,查看更多内容
随时随地看视频慕课网APP