c#を攻略しよう

c#

インデクサ

インデクサを使うと、オブジェクトを配列のように扱うことができます。


[TOP]


 

class Print
{
    int[ ] a;
    public pri( int c ){
        a = new int[ c ];
    }
    public int this[ int b ]{
        get{

           return a[ b]; //aを経由してbの値を取り出す
        }
        set{

           a[ b ]=value; //bを経由してaに値を代入する
        }
    }

}

class main_program
{
   public static void Main( ){
       Print pri = new Print( 3 );
       pri[ 0 ] = 1; //インデクサpri[0]に1を代入
       pri[ 1 ] = 2;
       pri[ 2 ] = 31;
       int d = pri[ 1 ]; //変数dにpri[ 1 ]の値を代入
    }
}

インデクサの書式にあたる箇所は、赤文字で表示しています。

インデクサは、getアクセサを使って値を取り出し、setアクセサを使って値を「value」を介して代入します。

インデクサは、プロバティの書式とほとんど同じです。

thisは、クラス名を指し、このクラスのオブジェクトを、制限を加えた配列のように扱うことができます。

戻る

※当サイトは、リンクフリーです。