Visual Studio 2015 Update 1及之后的版本对C++ 内存访问异常调试的一点改进
编写C/C++代码时,通常使用复杂的代码行来处理多个指针,例如,在单个行上访问多个指针。然而,当访问冲突发生时,很难破译这行代码的哪一部分是问题所在。为了调试这个问题,您可能已经将这一行代码分解成多行,但不会再这样了。当使用Visual Studio 2015更新1时发生这种情况时,您可以很容易地看到导致此异常的指针。现在,我们在异常对话框中直接显示一条消息,通知您哪个变量是nullptr。
让我们来看下面的小C++代码示例。在本例中,我们有一系列类,每个类都包含指向另一个类的指针,以及一个名为GetHelloWorld()的函数。在main()方法中,我们取消引用所有指针,以便打印“Hello World”。
int main() { ClassA* A = new ClassA(); printf(A-> B-> C-> D-> GetHelloWorld()); return 0; }
- 上一篇: 仅通过转储来排除内存泄漏
- 下一篇: 使用Java中的InputStream读取文件数据