procedure TForm1.Button1Click(Sender: TObject);
var
a,b,c : Integer;
begin
a := 1;
b := a;
c := b;
Edit1.Text := IntToStr(c); //此处断点
end;a,b,c都被引用过,可以看到debug时代码没有被优化掉(左边有点),按理说a,b,c的值都应该可以看到,在别人的机器上也确实如此。但在我机器上死活看不到,说Inaccessible value,但Edit1里还是显示了结果的。这是为什么?如何解决?
var
a,b,c : Integer;
begin
a := 1;
b := a;
c := b;
Edit1.Text := IntToStr(c); //此处断点
end;a,b,c都被引用过,可以看到debug时代码没有被优化掉(左边有点),按理说a,b,c的值都应该可以看到,在别人的机器上也确实如此。但在我机器上死活看不到,说Inaccessible value,但Edit1里还是显示了结果的。这是为什么?如何解决?
var
a,b,c : Integer;
begin
a := 1;
b := a;
c := b;
Edit1.Text := IntToStr(c);
end;//此处断点
就是照你的,还是可以看到c的值的.
你是不是在断点进,选中变量c,然后按一下CTRL+F7看看不过在 b:=a;设断点,却不行,问题应该就在这儿
procedure TForm1.Button1Click(Sender: TObject);
var a,b,c:integer;
begin
a := 1;
b := a;
if b<>0 then
c := b;
Edit1.Text := IntToStr(b);
end;
这样就可以居然.
变量窗口显示刚才执行过的那句代码的值,执行过就被覆盖了,也就是,
执行到end;时,它执行Edit1.Text := IntToStr(c);即把c := b 覆盖了,
它就不会显示1,而在执行到Edit1.Text := IntToStr(c); 时其显示上一
句执行结果。若你的不能显示,则应是你的Delphi系统有问题
"不过在 b:=a;设断点,却不行,问题应该就在这儿"
此时不行是因为a没有被引用过,一旦引用过就应该能看到,可是我就死活看不到
不是在哪里设断点的问题to weizi2000(秋风啊) :
可以肯定是系统有问题,不总是这样的,前两天调试还好好的
我就是想知道有没有什么环境的设置可以解决这个问题
或者是delphi的bug?
重装有用么?
me up too
这个我知道的,就算不去掉优化,只要引用了也是可以看到值的
我现在已经去掉了,可还是看不到