Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.74/19: Рейтинг темы: голосов - 19, средняя оценка - 4.74
1 / 1 / 1
Регистрация: 20.09.2015
Сообщений: 49

Replace_if и foreach

25.01.2019, 16:02. Показов 3595. Ответов 5

Студворк — интернет-сервис помощи студентам
Есть такой код по приведению текста в нижний регистр и по удалению знаков препинания
C++
1
2
foreach(buff.begin(), buff.end(), [](char & c) { c = tolower(c); });
replace_if(buff.begin(), buff.end(), [](unsigned char ch) { return ispunct(ch); }, ' ');
Собственно что означают
C++
1
[](char & c)
и
C++
1
[](unsigned char ch)
. Перегрузка или что?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
25.01.2019, 16:02
Ответы с готовыми решениями:

Правильное использование replace_if
Есть пользовательский класс Money. typedef Money mon; typedef vector<mon> monVec; Дана функция вида: void func3(monVec...

Обработка XML. Цикл foreach (XmlNode.) вложенный во внешний foreach
Здравствуйте. Возникла проблема при обработке XML-файла (с помощью XMLDocument). В теме я новичок. Имеется XML файл такого типа: ...

Ошибка в foreach: foreach statement cannot operate on variables of type 'System.Collections.IEnumerator'
using System; using System.Collections; namespace P { class Program { public static IEnumerator...

5
Параллельный Кот
 Аватар для valen10
1905 / 827 / 350
Регистрация: 25.03.2016
Сообщений: 2,045
25.01.2019, 16:08
Лучший ответ Сообщение было отмечено NumberUno как решение

Решение

Лямбда-функции.
1
зомбяк
 Аватар для TRam_
1585 / 1219 / 345
Регистрация: 14.05.2017
Сообщений: 3,940
25.01.2019, 16:16
Лучший ответ Сообщение было отмечено NumberUno как решение

Решение

https://ru.cppreference.com/w/cpp/language/lambda

https://habr.com/ru/post/66021/
1
1 / 1 / 1
Регистрация: 20.09.2015
Сообщений: 49
25.01.2019, 16:23  [ТС]
Получается лямбда функция захватывает символ и в нижний регистр (в случае с регистром)?
0
Параллельный Кот
 Аватар для valen10
1905 / 827 / 350
Регистрация: 25.03.2016
Сообщений: 2,045
25.01.2019, 16:34
Лучший ответ Сообщение было отмечено NumberUno как решение

Решение

NumberUno, foreach пробегает по всем элементам (буквам в данном случае) и передает их по ссылке в функцию. Тут вместо лямбда-функции может быть и обычная функция.
C++
1
2
3
4
5
void change(char & c) { 
    c = tolower(c); 
}
//...
foreach(buff.begin(), buff.end(), change);
1
зомбяк
 Аватар для TRam_
1585 / 1219 / 345
Регистрация: 14.05.2017
Сообщений: 3,940
25.01.2019, 16:54
Цитата Сообщение от NumberUno Посмотреть сообщение
лямбда функция захватывает символ
Данная лямбда-функция не захватывает ничего. Она обрабатывает только аргумент, который ей передаётся (текущий при переборе элемент буфера)

Добавлено через 51 секунду
Захват - это немного другое.
2
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
25.01.2019, 16:54
Помогаю со студенческими работами здесь

Нужен простой пример из Foreach в Parallel.Foreach
Покажите любой простой пример из Foreach в Parallel.Foreach. Не могу до конца понять.

Тип вывода <c:forEach ></c:forEach>
Здравствуйте. У меня такая проблема. При выводе в jsp с помощью jstl &lt;c:forEach &gt;&lt;/c:forEach&gt;, выходит ошибка ...

List.ForEach vs foreach производительность?
Что лучше использовать в плане производительности List.ForEach или foreach(var ... in ...)? C# .net core, перебор идёт из...

Foreach внутри foreach
Посетители сайта видят список альбомов в мозаичном виде по 3 альбома в ряд, 12 альбомов на страницу. Обязательно реализовать постраничную...

Foreach vs foreach to LINQ
Доброго времени суток, форумчане! Как записать сий код с помощью LINQ public void...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru