|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
12.01.2018, 14:52 | #1 |
Новичок
Джуниор
Регистрация: 12.01.2018
Сообщений: 1
|
Организовать шаблонную функцию для контейнеров C++
Привет,
1) Нужно организовать шаблонную функцию в которую подается map<int, pair<int ,int>>, и возвращает map<int, pair<int , int >>. Функция должна инкрементировать только данные по ключу map. Например: input : 1 (2, 2) output: 1 (4, 4) 2) Функция должна корректно работать не только для контейнеров, состоящих из чисел, но и для составных объектов, например, векторов словарей пар чисел. Функция должна возвращать копию исходного контейнера, модифицировав его следующим образом: для vector элементы нужно возвести в квадрат; для map в квадрат нужно возвести только значения, но не ключи; для pair в квадрат нужно возвести каждый элемент пары ___________________________________ ________________________ 1) Решил задачу так. Вроде работает. map<T, pair<T,T> > Sqr(map<T, pair<T, T> >& m) { for (auto &item : m) { item.second.first = item.second.first * item.second.first; item.second.second = item.second.second * item.second.second; } return m; } 2) Как написать более общую функцию? Если там могут быть разные аргументы - структуры. |
12.01.2018, 15:17 | #2 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,707
|
Код:
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Написать функцию «Факториал» и программу, использующую эту функцию для вывода таблицы факториалов. | Rufer | Помощь студентам | 1 | 20.06.2016 12:53 |
Имитация контейнеров. Классы | a_lexfox | Помощь студентам | 3 | 09.05.2016 13:16 |
Параметры медиа-контейнеров. | min@y™ | Win Api | 6 | 22.02.2016 18:04 |
а) Создать шаблонную функцию, изменяющую попарно элементы массива | Маша))) | Visual C++ | 0 | 16.02.2016 18:48 |
Рандомно заполнить двумерный массив, используя шаблонную функцию | akush | Помощь студентам | 2 | 01.10.2011 19:37 |