首页 相关文章 跟踪访问冲突AVs的位置

跟踪访问冲突AVs的位置

假如一个 AV 的起因源自于试图访问没有初始化的类的属性(或方法),在没有多少代码的情况下这是很轻易识别的。但另一方面假如有一大堆代码时,或者 AV 出现在多次重复的循环体中的话,就相当有难度了。幸运的是,( C++Builder 内或外的) AV 的错误信息是通过窗口显示的。这有助于辨别由于非法内存访问引起的错误。有两件事必须在头脑中牢记: a) 别让十六进制的符号吓倒你。 b) 更别害怕 CPU 窗口。 考虑如下的代码段 : TEdit *EditBox; EditBox-AutoSelect = false;这在语法上似乎是正确的,事实上编译器也不会报错。当然,问题在运行时就会暴露出来。运行时,会得到类似 "Access Violation at (someaddress) in module Vcl40.bpl. Read of address 000001F4." 的错误,试试看。 发生什么了? Ok ,在内存中一个对象( object )与数组是非常相似的。我们最好还是先看看一个数组吧。 考虑如下的代码段 : int myIntegerArray [ 10 ]; myIntegerArray [ 0 ] = 6 ; myIntegerArray [ 1 ] = 88当我们...[ 查看全文 ]

2016-02-19 标签:

跟踪访问冲突AVs的位置的相关文章

手机页面
收藏网站 回到头部