请教一个指针强制类型转换问题!

maojianhuan 2007-09-27 08:55:31
type
TTest1Record = record
mystr: String;
pp: PCHAR;
test: String;
end;
PTestRecord = ^TTest1Record;

type
TTest2Record = record
mystr: String;
p: PCHAR;
mm: String;
end;
PTest2Record = ^TTest2Record;

var
p1: PTest1Record;
p2: PTest2Record;
begin
System.New(p1);
System.new(p2);
p1.mystr := '1';
p1.pp := PCHAR(p2);
p1.test := '2';

p2.p := PCHAR(p1);
p2.mm := '4';
p2.mystr := '3';
showmessage(PTest2Record(p1.pp).mystr);
dispose(p2);
dispose(p1);
end;

程序目的是让两个类或结构体能够互指,这种强制类型倒是能实现,也能成功执行,就是不知道以后会不会引起问题,比如编译出来的应用放到其他机子运行时等。。。请各位高手指点一下,谢谢!
...全文
77 1 收藏 3
写回复
3 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
hongqi162 2007-09-27
不会有问题
回复
maojianhuan 2007-09-27
没人解疑吗?
回复
相关推荐
发帖
语言基础/算法/系统设计
创建于2007-08-02

1.6w+

社区成员

Delphi 语言基础/算法/系统设计
申请成为版主
帖子事件
创建了帖子
2007-09-27 08:55
社区公告
暂无公告