点击或拖拽改变大小

Functions.ACloneShallow 方法 (__Array)

X#
浅复制一个数组,不包括其子数组。

命名空间:  XSharp.RT
程序集:  XSharp.RT (在 XSharp.RT.dll 中) 版本:2.22 GA
语法
 FUNCTION ACloneShallow(
	aSource AS ARRAY
) AS ARRAY
查看代码

参数

aSource
类型:__Array
要复制的数组。

返回值

类型:__Array
aSource 的浅复制副本,不包括其子数组。
备注
ACloneShallow() 创建 aSource 的副本。
与 AClone() 不同,ACloneShallow() 不检查 aSource 是否包含子数组,如果存在也不会复制它们。
ACloneShallow() 的工作方式也与 AClone() 不同,AClone() 通过递归遍历源数组来进行复制。
ACloneShallow() 首先从源数组直接获取信息构建目标数组结构,然后将第一维的值复制到目标数组。
如果源数组的某个元素是子数组,目标数组将包含对该子数组的引用。
示例
这个例子创建一个数组并使用 ACloneShallow() 复制它。
此外,通过改变源子数组中的一个元素自动影响目标子数组,
说明子数组是通过引用复制的:
X#
1LOCAL aSource, aTarget, aSourceSubArray AS ARRAY
2aSourceSubArray := {3,4,5}
3aSource := {1, 2, aSourceSubArray}
4aTarget := ACloneShallow(aSource)
5// aTarget 是 {1, 2, {3,4,5}}
6// 现在改变源子数组
7aSourceSubArray[3] := 100
8// 这个改变也反映在 aTarget 中
9// aTarget 现在是 {1, 2, {3,4,100}}
参见