使用索引器访问结构?

时间:2011-07-18 09:34:17

标签: c# struct

可以使用索引器访问类中的struct数组吗?

例如这里..

class sample
{
  public struct foo
  {
     int x;
     int y;
  }
  foo[] anyname=new foo[100];
  public foo this [int i]
  {
    get
    {
     // code here
    }
    set
    {
     // code here
    }
  }
}

2 个答案:

答案 0 :(得分:2)

您可以返回(或指定)项目的副本

    public foo this[int i]
    {
        get { return T[i]; }
        set { T[i] = value; }
    }

注释;

  • T通常是一个错误的名称,因为约定T指的是泛型
  • struct几乎总是被滥用;在决定使用它之前确保你知道struct 意味着什么 - 意味着什么是“没有方法的轻量级对象”,这是经常报道(并且完全不正确)的神话;特别是, mutable struct通常是一个非常糟糕的主意

答案 1 :(得分:0)

返回此.T [i];

this.T [i] = value;