结构指针问题

sharklee 2003-11-20 05:41:40
有如下结构指针:
ptest = ^test;
test = Packed Record
index : Array[ 0 .. 5 ] Of Char;
Cnt : PChar;
End;
aa=^test;
现将ptest的值传递给变量aa,然后 dispose 变量ptest,请问应该如何操作。
请问如果清空变量ptest后,cnt指针是否仍然有效?
...全文
32 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
sharklee 2003-11-21
  • 打赏
  • 举报
回复
如果使用aa:=bb,那么bb中的cnt指针是否也一并能够赋给aa中的cnt指针呢?
还有,在dispose(aa)之前,是否需要freemem(aa.cnt)呢??
kylincn 2003-11-21
  • 打赏
  • 举报
回复
如果要共用数据就做个引用,aa := bb即可,释放的时候dispose(aa)或dispose(bb)即可,不要两个都做。
如果要拷贝一个副本用Move函数,两者都需要释放。
sharklee 2003-11-21
  • 打赏
  • 举报
回复
不好意思,写错了。
aa: ptest;
bb: ptest;
现在要将aa中的内容传递给bb,请问应该如何操作?
传递后是否两个变量指向同一地址?
如果dispose(bb)或dispose(aa),那么结构中的cnt指针是否仍然有效,是否需要单独freemem操作?
sharklee 2003-11-21
  • 打赏
  • 举报
回复
请各位帮帮忙!!
aiirii 2003-11-20
  • 打赏
  • 举报
回复
ptest = ^test; 應該也是個類型聲明, 而不是一個變量指針, 你要明白 !
aa=^test; 則不知道是何意了!

5,927

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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