点击或拖拽改变大小

Functions.IvarList 方法

X#
将对象的所有实例变量存储到数组中。

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

参数

oObject
类型:Object
包含要存储的实例变量的对象。

返回值

类型:__Array
包含 oObject 的所有实例变量和访问方法名称的符号数组。
备注
这种转换可以为您提供额外的数据操作灵活性,并可以让您利用强大的数组函数,如 AEval() 和 AScan()。
函数调用中的作用域是 SELF。
示例
此示例使用 IVarList() 将 INSTANCE 和 EXPORT 实例变量存储到数组中。
然后打印存储的实例变量。(请注意,密码未存储在数组中,因为它是受保护的实例变量。)
X#
 1CLASS Person
 2    EXPORT name
 3    INSTANCE grade
 4    PROTECT password
 5CONSTRUCTOR(tname, tgrade, tpassword)
 6    name := tname
 7    grade := tgrade
 8    password := tpassword
 9END CLASS
10
11FUNCTION MakeArray() AS VOID
12    LOCAL x AS OBJECT
13    LOCAL a AS ARRAY
14    x := Person{"Randal", "A", "123"}
15    a := IVarList(x)
16    // Print them
17    FOR i := UPTO ALen(a)
18        QOut(a[i])
19    NEXT
20                        // NAME
21                        // GRADE
参见