Defining Index Properties : Property « Class « Visual C++ .NET






Defining Index Properties

 
#include "stdafx.h"
using namespace System;

ref class Numbers 
{
public:
    Numbers()
    {
        defaultArray = gcnew array<String^> 
        { 
            "zero", "one", "two", "three", "four", "five" 
        };
    }

    property String^ default [int]
    {
        String^ get(int index)
        {
            if (index < 0)
                index = 0;
            else if (index > defaultArray->Length)
                index = defaultArray->Length - 1;

            return defaultArray[index];
        }
    }
private:
     array<String^>^ defaultArray;
};

void main() 
{
    Numbers numbers;

    Console::WriteLine(numbers[-1]);
    Console::WriteLine(numbers[3]);
    Console::WriteLine(numbers[10]);
} 

   
  








Related examples in the same category

1.Array Property
2.Static Property
3.Scalar number Property
4.Indexed properties
5.Indexed properties 2
6.Property accessor delegate
7.Static property
8.Declaring properties
9.Write only property
10.Virtual properties
11.Public properties can be used as named parameters