|
|
导航: |
论坛 -> DELPHI技术
斑竹:liumazi,sephil |
|
作者: |
|
2019/7/18 11:59:26 |
标题: |
|
加入我的收藏 |
楼主: |
比如.
obja = objsourcea; // 这时两个对象是一样的, 改obja的值也会影响objsourcea,
但我现在想 obja = newobjb; 这样相当于赋值. 怎么样才能够让objsourcea不被影响? 给原变量松邦.
----------------------------------------------
delphi界写python最强, python界写delphi最强. 写自己的代码, 让别人去运行. |
作者: |
|
2019/7/18 12:45:26 |
1楼: |
对象这样赋值二者指向同一内存地址。只能申请新内存地址(新建对象),将原对象数据复制过去,好像有个assign函数,但是需要重写
----------------------------------------------
-
|
作者: |
|
2019/7/18 20:20:27 |
2楼: |
调用 Assign方法,注意对象必须实现了AssignedTo方法,或重载了此方法.
----------------------------------------------
delphi|vue|golang hnysoft|hnyerp+mes+srm
|
作者: |
|
2019/7/19 15:41:38 |
3楼: |
1楼,2楼的正解, 关键就是这两个方法: TPersistent.Assign, 或 TPersistent.AssignTo, 如果你操作的类没有重载这两个方法,那只有一个一个成员赋值了
----------------------------------------------
UniKeeper V10.40 -- 您最贴心的个人数据管理助手
|
作者: |
|
2019/7/19 18:14:26 |
4楼: |
nil
----------------------------------------------
(C)(P)Flying Wang
|
|