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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.90
vbloodv
22 / 22 / 0
Регистрация: 15.12.2012
Сообщений: 314
#1

Синтаксический сахар для for - C++

29.03.2013, 02:49. Просмотров 1306. Ответов 18
Метки нет (Все метки)

структура for_each предельная понятна, но как sort для базовых типов получается только два параметра.
Возможно использовать for_each как-то так?
C++
1
2
3
4
for_each(v.begin(),v.end())
{
     //some do v
}
(именно так невозможно)
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.03.2013, 02:49
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Синтаксический сахар для for (C++):

Определить по какой цене был закуплен сахар - C++
Фирма Сахарок реализовала M тонн сахара на сумму рублей, получив при этом N % прибыли Определить по какой цене был закуплен сахар

Построить синтаксический анализатор для понятия идентификатор - C++
Построить синтаксический анализатор для понятия идентификатор. идентификатор. :: = {буква идентификатор {цифра буква}}

Построить синтаксический анализатор для определяемого в словаре понятия формулировка-задачи - C++
Для описания понятия формулировка-задачи мы снова используем грамматику: формулировка-задачи ::= список-определений вопрос ...

синтаксический анализатор - C++
Доброго времени суток. Подскажите как написать синтаксический анализатор кода(паскаль). Как это правильно делать? как это сделано в средах...

Синтаксический анализатор - C++
Нужна помощь именно с алгоритмом. Задание звучит так - проверить корректность написания заголовка функции. Прототипы не учитываются. ...

Синтаксический анализатор - C++
Нужно написать синтаксический анализатор для одного маленького фрагмента программы, т.е. проверка правильности грамматического построения...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
OhMyGodSoLong
~ Эврика! ~
1243 / 992 / 42
Регистрация: 24.07.2012
Сообщений: 2,002
29.03.2013, 03:44 #2
Условно переносимый сахар (в С++11 можно переписать с auto и не объявлять переменную заранее):
C++
1
2
3
4
#define foreach (_Container, _Variable)  \
  for (_Variable = (_Container).begin(); \
       _Variable != (_Container).end();  \
       _Variable++)
Более переносимый сахар — std::for_each + лямбды (или функторы для бедных).

Непереносимый, но работающий в C++03 сахар — см. реализацию foreach в Qt.
1
vbloodv
22 / 22 / 0
Регистрация: 15.12.2012
Сообщений: 314
29.03.2013, 03:45  [ТС] #3
Цитата Сообщение от OhMyGodSoLong Посмотреть сообщение
Ещё более переносимый сахар — std::foreach + лямбды.
это только для с++11 ? ( без сторонних библиотек)
0
OhMyGodSoLong
~ Эврика! ~
1243 / 992 / 42
Регистрация: 24.07.2012
Сообщений: 2,002
29.03.2013, 03:49 #4
Анонимные функции естессно. Конечно, функторы будут работать, но они недостаточно сладкие. Если не C++11, то я бы остановился на первом дефайне, если не хочется особо париться. Или использовать шайтан-магию из Qt, если очень хочется "красиво".
1
Tulosba
:)
Эксперт С++
4395 / 3238 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
29.03.2013, 07:53 #5
А про range-for забыли?
C++
1
for( auto& item : container )
2
OhMyGodSoLong
29.03.2013, 11:07
  #6

Не по теме:

Про слона-то я и забыл...

0
Tulosba
29.03.2013, 11:18
  #7

Не по теме:

Цитата Сообщение от OhMyGodSoLong Посмотреть сообщение
Не по теме:
Про слона-то я и забыл...
Забыть не страшно, страшно - не приметить

1
nexen
187 / 180 / 3
Регистрация: 27.01.2012
Сообщений: 1,335
29.03.2013, 12:09 #8
Ребят, что такое сахар? :/
0
Jupiter
Каратель
Эксперт С++
6554 / 3975 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
29.03.2013, 12:13 #9
Цитата Сообщение от nexen Посмотреть сообщение
что такое сахар?
Синтаксический сахар
1
Tulosba
:)
Эксперт С++
4395 / 3238 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
29.03.2013, 12:24 #10
Цитата Сообщение от nexen Посмотреть сообщение
Ребят, что такое сахар?
Сахар
0
go
29.03.2013, 12:38
  #11

Не по теме:

Цитата Сообщение от OhMyGodSoLong Посмотреть сообщение
std::for_each + лямбды
Использовать С++11 и не использовать цикл по коллекции???

0
ForEveR
29.03.2013, 12:45
  #12

Не по теме:

go, А мне больше нравится for_each + лямбда, чем цикл по коллекции. Может еще просто не привык.

0
vbloodv
22 / 22 / 0
Регистрация: 15.12.2012
Сообщений: 314
29.03.2013, 15:44  [ТС] #13
Цитата Сообщение от ForEveR Посмотреть сообщение
А мне больше нравится for_each + лямбда, чем цикл по коллекции. Может еще просто не привык.
Какой вы используете компилятор? Поддержка c++11?
0
Герц
524 / 341 / 4
Регистрация: 05.11.2010
Сообщений: 1,077
Записей в блоге: 1
29.03.2013, 17:28 #14
Цикл по колекции будет теоретически быстрее, так как в итоге он разворачивается в обычный for, в то время как для лямбды создается временный объект.
2
OhMyGodSoLong
~ Эврика! ~
1243 / 992 / 42
Регистрация: 24.07.2012
Сообщений: 2,002
30.03.2013, 00:24 #15
Цитата Сообщение от go Посмотреть сообщение

Не по теме:

Использовать С++11 и не использовать цикл по коллекции???

Не по теме:

Я и не использую Си++11 И с функциональщиной лучше знаком вне его контекста.



Цитата Сообщение от Герц Посмотреть сообщение
Цикл по колекции будет теоретически быстрее, так как в итоге он разворачивается в обычный for, в то время как для лямбды создается временный объект.
А практически есть оптимизатор, который умеет инлайнить и лямбды. (Говорю, смотря на выход gcc 4.7.)
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.03.2013, 00:24
Привет! Вот еще темы с ответами:

Синтаксический анализатор - C++
никак не могу разобраться с заданием, может быть кто-то сталкивался 1.Построить синтаксические диаграммы для следующих конструкций; ...

Синтаксический анализ - C++
Много кто берётся но мало кто доводит до конца эту тему... Я написал класс Expression смысл которого сводится к тому, чтобы вычислить...

Синтаксический редактор - C++
Здравствуйте пишу с просьбой помочь в реализации программки на С или С++ быть может кто либо уже делал подобное вобщем нужно...

Синтаксический анализ выражений - C++
Здравствуйте. У меня в текстовом файле есть 3 выражения PRICE = 5 TAX = PRICE * 1e-02 COST = PRICE + TAX Выражение анализирует...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
30.03.2013, 00:24
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru