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

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;

程序目的是让两个类或结构体能够互指,这种强制类型倒是能实现,也能成功执行,就是不知道以后会不会引起问题,比如编译出来的应用放到其他机子运行时等。。。请各位高手指点一下,谢谢!
...全文
95 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
hongqi162 2007-09-27
  • 打赏
  • 举报
回复
不会有问题
maojianhuan 2007-09-27
  • 打赏
  • 举报
回复
没人解疑吗?

16,747

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧