Форум программистов, компьютерный форум CyberForum.ru

Можно ли заменить на auto ? - C++

Восстановить пароль Регистрация
 
pEntity
10 / 5 / 1
Регистрация: 12.12.2012
Сообщений: 371
12.12.2013, 05:08     Можно ли заменить на auto ? #1
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
static ExtraItem * GetExtraItemByIndex(size_t Index)
{
  static List <ExtraItem *> ::iterator ExtraItem = NULL;
 
  for (ExtraItem = g_ExtraItems.begin(); ExtraItem != g_ExtraItems.end(); ExtraItem++)
  {
    if ((*ExtraItem)->Index == Index)
    {
      return (*ExtraItem);
    }
  }
 
  return NULL;
}
Можно цикл заменить на
C++
1
for (auto ExtraItem = g_ExtraItems.begin(); ExtraItem != g_ExtraItems.end(); ++ExtraItem) ?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.12.2013, 05:08     Можно ли заменить на auto ?
Посмотрите здесь:

C++ на что можно заменить функцию?
C++ Можно заменить C на C++ ?
C++ Чем можно заменить выражение b=SQEARE(4,5+2,5)?
C++ как можно заменить TAB на Enter?
C++ как можно заменить строки в программе?
C++ Чем можно заменить Switch -- case ?
Чем можно заменить функцию strdup C++
C++ Чем можно заменить функцию swap?

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
egor2116
 Аватар для egor2116
337 / 368 / 42
Регистрация: 20.01.2013
Сообщений: 1,100
12.12.2013, 11:46     Можно ли заменить на auto ? #2
Можно ли заменить на auto
А вы у своего компилятора спрашивали ?
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
12.12.2013, 15:28     Можно ли заменить на auto ? #3
pEntity, ИМХО куда логичнее заменить на range-for.
C++
1
2
3
for (auto ExtraItem* item : g_ExtraItems)
{
}
или вообще поюзать find_if.
C++
1
2
3
4
5
6
auto result = std::find_if(g_ExtraItems.begin(), g_ExtraItems.end(),
[Index](const ExtraItem* item)
{
    return item->index == Index;
});
return result == g_ExtraItems.end() ? NULL : *result;
Yandex
Объявления
12.12.2013, 15:28     Можно ли заменить на auto ?
Ответ Создать тему
Опции темы

Текущее время: 06:15. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru