Member 12278335 Ответов: 1

Получить элемент, из которого возвращается функция


Я создал метод "ribsPoints()", возвращающий список. Я хочу получить доступ к конкретному элементу списка в списке.

что является лучшим решением.

Что я уже пробовал:

статический список ribsPoints()
{
_rPoint список = новый список();
//первые ребра
_rPoint.Добавить(new XYZ(firstRibSpacing, OuterStiffinerThick, 0));
_rPoint.Add(new XYZ(firstRibSpacing, PanelWidth - (2 * OuterStiffinerThick), 0));

вернуться _rPoint;
}



// вызов элемента списка
пустота createSweep()
{
Ребра стреловидности = createRibs(fDoc, ribsPoints[я], ribsPoints().ElementAt(я));
}

BillWoodruff

Вы не показываете контекст (классы), в котором определяются и используются ваши примеры кода. Мы не можем читать твои мысли.

Ваше использование списка не является универсальным (строго типизированным), и код никогда не будет компилироваться.

1 Ответов

Рейтинг:
7

OriginalGriff

C# не имеет не-универсального класса списка: универсальная версия - это List<T> и как таковой, ваш код не будет компилироваться без вашего написания собственного класса списка-и если вы написали свой собственный, то только вы знаете, как он работает, что вы можете с ним сделать и так далее.
Общая версия потребует различных определений:

static List<Sweep> ribsPoints()
    {
    List<Sweep> _rPoint = new List<Sweep>();
    //first ribs
    _rPoint.Add(new XYZ(firstRibSpacing, OuterStiffinerThick, 0));
    _rPoint.Add(new XYZ(firstRibSpacing, PanelWidth - (2 * OuterStiffinerThick), 0));
    
    return _rPoint;
    }
И XYZ класс должен был бы быть производным от Sweep класс.

Если вы написали свой собственный класс List, который возвращает коллекцию объектов Sweep, то он в лучшем случае плохо назван с точки зрения обслуживания!

Поэтому посмотрите на свой код и посмотрите, что он делает - мы не можем сделать это за вас.


Member 12278335

Большое вам спасибо за ваш повтор.Сформируйте метод, который я хотел сделать, обновите список в другом состоянии. После того, как я попробовал, как показано ниже. свои работы.
я создаю переменную списка, чтобы получить возврат списка из функции, а затем переменную, которую я использовал.
List<sweep> temp = новый список<sweep>();
темп = ribsPoints();
// вызов элемента списка
пустота createSweep()
{
Ребра стреловидности = createRibs(fDoc, temp[i], temp[i+1]);
}

OriginalGriff

Всегда пожалуйста!