J
Jhdandcl
Unregistered / Unconfirmed
GUEST, unregistred user!
先定义一记录指针,
Type
PMyRec=^TMyRec;
TMyRec=record
Str1:string;
str2:string;
end;
.....
procedure TForm1.Button1Click(Sender: TObject);
var
aMyRec;
b:TMyRec;
begin
New(a);
a.Str1:='a.Str1'
//a为一指向TMyRec类型的指针,按理说这句应该是编译通不过的,
可是我测试时通过.??
a^.Str1:='a^.str1'
//a^为指针a所指向的记录型(TMyRec)内存值,
这里a.str1 和a^.str1 有何区别.
Dispose(a);
end;
我的经验是a.str1,和a^.str1 ,虽然用法上有点不一样但是效果都一样,
例;
a.str1:='abc';
showmessage(a.str1)
//显示 'abc'
showmessage(a^.str1)
//还是显示 'abc'
a^.str1:='abc';
showmessage(a.str1)
//显示 'abc'
showmessage(a^.str1)
//还是显示 'abc'
但我想俩者还是应该有区别的,可能是我某个知识点上还没有悟透,请大家谈看法.
Type
PMyRec=^TMyRec;
TMyRec=record
Str1:string;
str2:string;
end;
.....
procedure TForm1.Button1Click(Sender: TObject);
var
aMyRec;
b:TMyRec;
begin
New(a);
a.Str1:='a.Str1'
//a为一指向TMyRec类型的指针,按理说这句应该是编译通不过的,
可是我测试时通过.??
a^.Str1:='a^.str1'
//a^为指针a所指向的记录型(TMyRec)内存值,
这里a.str1 和a^.str1 有何区别.
Dispose(a);
end;
我的经验是a.str1,和a^.str1 ,虽然用法上有点不一样但是效果都一样,
例;
a.str1:='abc';
showmessage(a.str1)
//显示 'abc'
showmessage(a^.str1)
//还是显示 'abc'
a^.str1:='abc';
showmessage(a.str1)
//显示 'abc'
showmessage(a^.str1)
//还是显示 'abc'
但我想俩者还是应该有区别的,可能是我某个知识点上还没有悟透,请大家谈看法.