Конференция ".Net" » индексаторы в c#
 
  • ddd329 (24.06.11 19:09) [0]
    Скажите пожалуйста, в c# можно создавать свойства-массивы как в Делфи? Т.е. есть класс:
    public class My_class
    {
    public int[] mass1;
    public int[] mass2;
    }
    Здесь мне нужно два индексатора, для mass1 и mass2. Можно ли вместо такого:public int this[int i]; написать такие
    public int Mass1[int i];
    и
    public int Mass2[int i];

    Чтобы к массивам можно было обращаться так:
    переменная.Mass1[5]
  • icelex © (24.06.11 21:19) [1]
    а зачем?
    в твоем классе уже есть все необходимое, чтобы обращаться к массивам

    если смущает открытость поля, сделай свойство
    public int[] M {get;}

    вопрос какой-то странный, если честно
  • ddd329 (24.06.11 21:25) [2]
    Не будем вдаваться в подробности, мне нужно знать какой индекс был передан для массива. Этот пример надуман, но смысл тот же)
  • icelex © (24.06.11 21:45) [3]
    тогда впрямую - нет: перечислитель в классе может быть только один
    но никто не мешает создать класс-массив со своим перечислителем
  • jack128_ (24.06.11 21:53) [4]
    чем

    public class MyClass
    {
       public IList<int> Mass1 {get;}
       public IList<int> Mass2 {get;}
    }
    не подходит??
  • ddd329 (24.06.11 21:54) [5]
    Я так и думал(((
    Спасибо!
 
Конференция ".Net" » индексаторы в c#
Есть новые Нет новых   [118484   +52][b:0][p:0]