Functions.ACloneShallowT 方法 (__ArrayBaseT) | |
浅复制一个数组,不包括其子数组。
命名空间:
XSharp.RT
程序集:
XSharp.RT (在 XSharp.RT.dll 中) 版本:2.22 GA
语法 FUNCTION ACloneShallow<T>(
aSource AS ARRAY OF<T>
)
AS ARRAY OF<T>
public static __ArrayBase<T> ACloneShallow<T>(
__ArrayBase<T> aSource
)
查看代码参数
- aSource
- 类型:__ArrayBaseT
要复制的数组。
类型参数
- T
- The type of the array elements
返回值
类型:
__ArrayBaseTaSource 的浅复制副本,不包括其子数组。
备注
ACloneShallow() 创建 aSource 的副本。
与 AClone() 不同,ACloneShallow() 不检查 aSource 是否包含子数组,如果存在也不会复制它们。
ACloneShallow() 的工作方式也与 AClone() 不同,AClone() 通过递归遍历源数组来进行复制。
ACloneShallow() 首先从源数组直接获取信息构建目标数组结构,然后将第一维的值复制到目标数组。
如果源数组的某个元素是子数组,目标数组将包含对该子数组的引用。
示例
这个例子创建一个数组并使用 ACloneShallow() 复制它。
此外,通过改变源子数组中的一个元素自动影响目标子数组,
说明子数组是通过引用复制的:
1LOCAL aSource, aTarget, aSourceSubArray AS ARRAY
2aSourceSubArray := {3,4,5}
3aSource := {1, 2, aSourceSubArray}
4aTarget := ACloneShallow(aSource)
5
6
7aSourceSubArray[3] := 100
8
9
参见