Четверг, 28 Марта 2024, 12:49

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Форум игроделов » Движки для разработки игр и сложные системы разработки » Unity » Как обратиться ко всем ячейкам массива C#? (Как обратиться сразу ко всем ячейкам массива C# (Unity3d)?)
Как обратиться ко всем ячейкам массива C#?
nanaminerДата: Четверг, 23 Марта 2017, 07:16 | Сообщение # 1
частый гость
Сейчас нет на сайте
Здравствуйте!
У меня есть массив:
Код
public GameObject[] Massiv = new GameObject[5];

И мне нужно обратиться сразу ко всем переменным этого массива, для манипуляций с ними.
Как мне это сделать blink ?
Зарание спасибо!
VostruginДата: Четверг, 23 Марта 2017, 07:51 | Сообщение # 2
постоянный участник
Сейчас нет на сайте
Подтяните знания основ языка. Это совсем просто.
Вам нужно циклом пройтись по коллекции.
Код

foreach(var item in myArray)
{
    item.name = "My test object";
}




slagusevДата: Четверг, 23 Марта 2017, 07:53 | Сообщение # 3
постоянный участник
Сейчас нет на сайте
Через For или Foreach не?
URGINSANДата: Четверг, 23 Марта 2017, 11:22 | Сообщение # 4
почти ветеран
Сейчас нет на сайте
nanaminer,
Код

for (int i = 0; i < Massiv.length; i++){
    Massiv[i]."действие с объектами массива"
}


Я на драйве
ЭргалонДата: Четверг, 23 Марта 2017, 19:27 | Сообщение # 5
Вездесущий
Сейчас нет на сайте
Лучше в for каждый элемент массива вынести в переменную, типо
Код
for (int i = 0; i < Massiv.length; i++){
GameObject object = Massiv[i];
}


Кубариум
Rise of the dark lords


Сообщение отредактировал Эргалон - Четверг, 23 Марта 2017, 19:27
OtinagiДата: Пятница, 24 Марта 2017, 08:38 | Сообщение # 6
постоянный участник
Сейчас нет на сайте
foreach сильно убивает производительность, и создавать объект для каждого элемента обычного массива при каждой итерацыи тоже скажется на фпс.

«Смерти меньше всего боятся те люди, чья жизнь имеет наибольшую ценность.»
Иммануил Кант
VostruginДата: Пятница, 24 Марта 2017, 10:22 | Сообщение # 7
постоянный участник
Сейчас нет на сайте
Цитата Otinagi ()
foreach сильно убивает производительность, и создавать объект для каждого элемента обычного массива при каждой итерацыи тоже скажется на фпс.

Давайте пруф, что бы не быть голословным.
1) По сути, Foreach это синтаксический сахар над for.
2) Объект не создаётся в цикле.




FlyOfFlyДата: Пятница, 24 Марта 2017, 10:49 | Сообщение # 8
заслуженный участник
Сейчас нет на сайте
Цитата Vostrugin ()

1) По сути, Foreach это синтаксический сахар над for.
2) Объект не создаётся в цикле.

над for, не над while ?
Код
Container container = new Container();
Enumerator enumerator = container.GetEnumerator();
try
{
    while (enumerator.MoveNext())
    {
  var element = enumerator.Current;
  // содержимое foreach
    }
}
finally
{
    IDisposable disposable = enumerator as IDisposable;
    if (disposable != null)
  disposable.Dispose();
}
Форум игроделов » Движки для разработки игр и сложные системы разработки » Unity » Как обратиться ко всем ячейкам массива C#? (Как обратиться сразу ко всем ячейкам массива C# (Unity3d)?)
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг