繁体   English   中英

C#:如何从父对象访问数组方法?

[英]C#: How to access array methods from parent object?

我的ctor返回一个多维数组的对象。 取决于构造函数参数,ctor返回的对象可以是不同的rank数组,但始终是int。

object arr = new int[2,2,2];

要么

object arr = new int[2,2,2,2,2];

要么

object arr = new int[0,0];

构造好arr对象后,知道它是什么( GetType() ),我想访问诸如RankGetLengthGetValue等数组方法。如何从object级别访问子级特定方法? 到目前为止,我只有四种方法可以访问arr对象: EqualsGetHashCodeGetTypeToString

将对象转换为数组,如下所示:

((int[])arr).Rank
((int[])arr).GetLength()

要么

(arr as int[]).Rank

您可以将变量声明为Array

Array arr = new int[2,2,2,2,2];
int rank = arr.Rank;

或强制转换为数组:

object arr = new int[2,2,2,2,2];
Array array = (Array)arr;

您必须将其强制转换回Array对象,然后这些方法将可用!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM