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

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

Войти
Регистрация
Восстановить пароль
 
tapochka
40 / 40 / 8
Регистрация: 25.04.2014
Сообщений: 499
#1

For_each не меняет входной контейнер - C++

02.09.2015, 01:48. Просмотров 218. Ответов 3
Метки нет (Все метки)

здравствуйте есть код который нужно сделать с помощью std::for_each без c++11 и boost:
C++
1
2
3
4
5
6
7
8
9
10
std::list<UnicodeString> map;
map.push_back("hello");
map.push_back("slowly");
map.push_back("world");
map.push_back("!");
std::list<UnicodeString>::iterator begin = map.begin();
std::list<UnicodeString>::iterator end = map.end();
for(; begin !=end; begin++) {
    *begin = *begin + " ";
}
UnicodeString - строка из c++ builder с имеющимся оператором плюс...
пытался сделать так, но ничего не удалось - элементы листа не поменялись:
C++
1
std::for_each(map.begin(), map.end(), std::bind2nd(std::mem_fun_ref(&UnicodeString::operator+), " "));
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.09.2015, 01:48     For_each не меняет входной контейнер
Посмотрите здесь:

For_each - C++
С помощью for_each, найти колличество иксов в массиве |{xi|xi&lt;3}| (Visual C++ 2005)

Метод в for_each - C++
Привет всем. Есть класс и структурка: struct Foo { Foo(): name(&quot;nx&quot;), val(9) {} string name; int...

for_each и деструкторы - C++
#include &lt;iostream&gt; #include &lt;algorithm&gt; using namespace std; class display { public: display() : i(0) { cout &lt;&lt; &quot;display...

Опять непонятки с for_each - C++
Недавно создавал тему на проблему реализации for_each.Теперь для моей программы нужно добавить еще одну функцию:• Вывод на экран студентов,...

Заменить все for на for_each - C++
Добрый вечер! Столкнулся с такой проблеммой. Нужно заменить все циклы for на for_each для реализации данных алгоритмов: Перестановка...

c++ for_each и вызов функции - C++
for(microbe &amp;i : microbes) { i.set_speed(diapozon_speed * rand() /RAND_MAX + min_speed ); // установка скорости ...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Croessmah
Модератор
Эксперт CЭксперт С++
13057 / 7320 / 817
Регистрация: 27.09.2012
Сообщений: 18,067
Записей в блоге: 3
Завершенные тесты: 1
02.09.2015, 03:09     For_each не меняет входной контейнер #2
C++
1
std::transform(map.begin(), map.end(), map.begin() , std::bind2nd(std::plus<UnicodeString>(), " ")) ;
tapochka
40 / 40 / 8
Регистрация: 25.04.2014
Сообщений: 499
02.09.2015, 03:11  [ТС]     For_each не меняет входной контейнер #3
Croessmah, а с for_each совсем не удастся?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.09.2015, 03:25     For_each не меняет входной контейнер
Еще ссылки по теме:

Как использовать инструкцию for_each ? - C++
Не могу понять как использовать std::for_each (например для вектора) std::vector&lt;int&gt; v; // создан вектор for (int i = 1; i&lt;10; i++) ...

STL библиотека. Ф-ция for_each - C++
При изучении STL, столкнулся со странным поведением ф-ции for_each библиотеки algorithm void Library::Func(int n) { cout &lt;&lt; &quot;n...

Написание функции для for_each - C++
Хочу распечатать список list через свою функцию используя for_each, но я не могу понять как заставить эту for_each работать с моей...

Почему for_each() не выводит кирилицу - C++
Вот такой код: #include &lt;iostream&gt; #include &lt;string&gt; #include &lt;vector&gt; #include &lt;algorithm&gt; void show(const std::string &amp; s); ...

Как вызвать метод для for_each? - C++
Здравствуйте. Мне нужно вызвать один метод для коллекции объектов. Что то вроде такого std::for_each( container.begin(),...

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


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

Или воспользуйтесь поиском по форуму:
Croessmah
Модератор
Эксперт CЭксперт С++
13057 / 7320 / 817
Регистрация: 27.09.2012
Сообщений: 18,067
Записей в блоге: 3
Завершенные тесты: 1
02.09.2015, 03:25     For_each не меняет входной контейнер #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от tapochka Посмотреть сообщение
с for_each
C++
1
2
3
4
5
6
7
8
9
struct mp : public std::binary_function < UnicodeString , const UnicodeString , void >
{
    result_type operator() ( first_argument_type & str , second_argument_type & add_str ) const
    {
        str += add_str ;
    }
} ;
//...
std::for_each(map.begin(), map.end(), std::bind2nd( mp() , " ") ) ;
Yandex
Объявления
02.09.2015, 03:25     For_each не меняет входной контейнер
Ответ Создать тему
Опции темы

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