e语言中使用deep_copy()和copy()方法

using deep_copy() and copy() methods in e language

e语言中copy和deep_copy方法有什么区别?

什么时候必须使用 deep_copy(),什么时候使用 copy() 就足够了?

谢谢!

copy 复制标量字段,并保留对子结构的引用。 而深拷贝递归地复制所有子结构。

要复制标量,请使用复制。 - 将引用子结构。 要复制子结构,请使用深复制。

Copy() 仅复制标量值、结构指针和引用同一列表。 Deep_copy() 将递归地创建新的结构实例并分配新列表并创建列表元素。如果列表元素是结构,那么这些也将是新实例

不同之处在于 copy() 是浅层的,这意味着它将标量和指针的值复制到列表或结构。 Deep_copy() 是更强的副本,具有控制 copy() 方法的属性,例如引用或创建新的 list/struct。 当您需要浅拷贝而不关心更深的层次结构时,请使用 copy()。当我们需要关注更深的层次结构时,使用 deep_copy()。