Coldfusion replicate()函数如何帮助保护数据完整性? 我想了解 Duplicate()函数的用途 当在变量上使用时 由函数返回。如果你愿意,那就太好了 可以提供以下示例: 使用Duplicate()很重要,或者 必要的 它还有其他用途吗

Coldfusion replicate()函数如何帮助保护数据完整性? 我想了解 Duplicate()函数的用途 当在变量上使用时 由函数返回。如果你愿意,那就太好了 可以提供以下示例: 使用Duplicate()很重要,或者 必要的 它还有其他用途吗,coldfusion,Coldfusion,我听过其他人在数据完整性方面提到Duplicate(),我想更好地了解它是如何工作的以及何时使用它 我经常看到: <cfreturn Duplicate(local.myVariable)> 当这也返回相同的结果时: <cfreturn local.myVariable> Duplicate用于按值传递变量,而不是按引用传递变量 如果使用,ColdFusion中的结构通常通过引用传递 cfset struct1=struct2 为了避免在更新struct2时对st

我听过其他人在数据完整性方面提到Duplicate(),我想更好地了解它是如何工作的以及何时使用它

我经常看到:

<cfreturn Duplicate(local.myVariable)>

当这也返回相同的结果时:

<cfreturn local.myVariable>

Duplicate用于按值传递变量,而不是按引用传递变量

如果使用,ColdFusion中的结构通常通过引用传递

cfset struct1=struct2

为了避免在更新struct2时对struct1进行更改,我们使用

cfset struct1=duplicate(struct2)

虽然大多数变量都在ColdFusion中,但结构不是——它们是,如果不小心,可能会导致无意中重写值


使用
Duplicate()
在内存中的另一个位置创建变量的相同副本,以便在通过引用传递变量时(请注意,您仍然通过引用传递,无法强制传递值)调用方对数据所做的任何更改都不会影响返回的源。

结构始终通过引用传递。Duplicate()只做一个深度复制,这样您就有了一个新的引用。