【发布时间】:2012-03-18 17:17:28
【问题描述】:
我还有一个问题要找你们
我有一门课
当我按下 Button1 时,它正在执行下一个代码
var a,b:TA;
begin
a:=Ta.Create;
b:=a;
a.i:=30;
FreeAndNil(a);
if (a = NIL) then ShowMessage("a is nil");
if (b=NIL) then ShowMessage("b is nil");
end;
两个实例都被破坏了机器人,只有一个是 NIL。我将如何写以知道 b 是否为空(已销毁)。我应该如何更改代码以便它应该写给我
a is nil
b is nil
所以我的问题是我应该如何知道指针 B 的位置是否是一个被破坏的实例
【问题讨论】:
-
不,不是。这是不同类型的问题
-
近距离投票的解释:欺骗问题中
a变量的规则也适用于您的b变量。抱歉,但这真的不是魔术,也不是很难理解。再想一想 2 秒。 -
我在问,在另一个变量 A(具有相同的指针)释放该对象之后,如何知道变量 B(来自指针的位置)的内容是否空闲(什么都没有,未分配)
-
@user558126,这里有一篇关于指针的好文章Addressing pointers
-
你明白我的问题了吗?