鱼C论坛

 找回密码
 立即注册
查看: 2270|回复: 1

[技术交流] C#入门基础——this索引器

[复制链接]
发表于 2016-9-5 11:30:30 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
我们在访问字段的时候,可以使用“.+字段名”访问。然而有的时候,如果使用索引访问它们将会很方便,这就是索引器允许做的事。
索引器是一组get和set访问器,与属性类似,语法如下:
Tpye this [int index]
{
    set
     {  }
    get
     {  }
}

索引器:
   1:不用分配内存来存储。
   2:和属性都主要被用来访问其它数据成员,它们与这些成员关联,并为它们提供获取和设置方向。
   3: 可以只有一个访问器,也可以两个都有。
   4:总是实例成员,因此不能声明为static。
   
namespace This索引器实例
{
    class Program
    {
        static void Main(string[] args)
        {
            Class1 a = new Class1();          //实例化
            Console.WriteLine("Value -- T0: {0},    T1: {1}",a[0],a[1]);
            a[0] = 15;
            a[1] = 20;
            Console.WriteLine("Value -- T0: {0},   T1: {1}", a[0], a[1]);
            Console.ReadKey();
        }
    }
    class Class1
    {
        int Temp0;
        int Temp1;
        public int this[int index]   //索引器
        {
            get                      //返回
            {
                return (0 == index) ? Temp0 : Temp1;  //三元运算符
            }
            set                    //写入
            {
                if (0 == index)
                    Temp0 = value;
                else
                    Temp1 = value;
            }
        }
    }
}

输出结果:

Value -- T0: 0,    T1: 0
Value -- T0: 15,  T1: 20

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-4-3 17:18:16 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-6-18 04:16

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表