• 全部
  • 语言基础/算法/系统设计
  • 数据库相关
  • 图形处理/多媒体
  • 网络通信/分布式开发
  • VCL组件开发及应用
  • Windows SDK/API
  • 问答

结构指针问题

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指针是否仍然有效?
...全文
6 点赞 收藏 5
写回复
5 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
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; 則不知道是何意了!
回复
相关推荐
发帖
Delphi
创建于2007-08-02

4875

社区成员

Delphi 开发及应用
申请成为版主
帖子事件
创建了帖子
2003-11-20 05:41
社区公告
暂无公告