关于变量和程序调试!
我的变量定义如下:
procedure TForm1.Button1Click(Sender: TObject);
var
z,xx,yy:Integer;
i,j,k,m,n:Integer;
begin
fillchar(A,sizeof(A),-1);//A是一个三维数组
form1.Caption:=form1.caption+' '+timetostr(now);
end;
程序通过编译运行。但是在调试过程(Watch与断点)中,发现所定义的xx,yy负值后,从Watch中看到xx:Variable 'xx' inaccessible here due to optimization的字样。yy也是一样。其它变量z,i,j,k,m,n都没有问题。??
xx,yy改为x,y或t,u依然!
改变xx,yy定义的顺序依然!
重新启动delphi运行依然!
以前用BPascal调试,从未出现过编译通过了,却观察不到变量。
这难道是Delphi的Bug?!或许我说的不对!
但是,谁能告诉我这是怎么回事?
附:我的工作环境Winme+Delphi4.0
另外,在delphi中怎么保存调试程序时,Watch中加入的变量。也就是下次打开调试时,不必再次输入!
谢谢!