Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
"C with Classes"
1640 / 1262 / 476
Регистрация: 16.08.2014
Сообщений: 5,271
Записей в блоге: 1
1

Адаптеры

03.03.2020, 13:37. Показов 299. Ответов 6
Метки нет (Все метки)

Какие плюсы от использования адаптеров, queue, stack, priority_queue, если они все равно используют STL контейнеры. Пока я нашел только один, это возможность более ясно показать свои намерения. Может ли поражать более эффективный код их использование.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.03.2020, 13:37
Ответы с готовыми решениями:

адаптеры
добрый вечер интересно ваше мнение. такие вещи как адаптеры, биндеры позиционируются как шибко...

Функциональные адаптеры
Для произвольного целочисленного массива данных написать функцию которая уменьшает все элементы в 2...

Функторы, алгоритмы и адаптеры
Нужна помощь! 1 Нужно создать multimap и multiset на основе элементов типа класса CPerson,...

Стандартные функторы-адаптеры
Добрый вечер! Хочу отсортировать контейнер, заполненный указателями на объекты класса Class,...

6
Комп_Оратор)
Эксперт по математике/физике
8675 / 4391 / 596
Регистрация: 04.12.2011
Сообщений: 13,137
Записей в блоге: 16
03.03.2020, 13:49 2
_stanislav, я считаю, смысл тот же что и у других контейнеров. Краткость, комфорт, отлаженность. Например queu выгодна когда всё добавляется/удаляется лишь с концов. Самому каждый раз такое писать нет смысла. Я думаю, именно стандартный вид кода при решении сходных задач у разных компаний и есть смыл std. И в этом смысле я бы его расширил)
1
"C with Classes"
1640 / 1262 / 476
Регистрация: 16.08.2014
Сообщений: 5,271
Записей в блоге: 1
03.03.2020, 14:15  [ТС] 3
Цитата Сообщение от IGPIGP Посмотреть сообщение
Например queu выгодна когда всё добавляется/удаляется лишь с концов.
std::deque то же.

std::deque как раз и используется в качестве второго параметра, вопрос именно в этом, почему нельзя просто использовать сразу дек?

C++
1
2
3
4
template<
    class T,
    class Container = std::deque<T>
> class queue;
Добавлено через 43 секунды
Цитата Сообщение от IGPIGP Посмотреть сообщение
я считаю, смысл тот же что и у других контейнеров.
я же не про контейнеры спрашивал, а про адаптеры
0
Комп_Оратор)
Эксперт по математике/физике
8675 / 4391 / 596
Регистрация: 04.12.2011
Сообщений: 13,137
Записей в блоге: 16
03.03.2020, 14:36 4
Цитата Сообщение от _stanislav Посмотреть сообщение
std::deque то же.
Я про неё и писал хотел написать. queu - односторонний контейнер, хотя внутренне должно быть много общего)
Цитата Сообщение от _stanislav Посмотреть сообщение
я же не про контейнеры спрашивал, а про адаптеры
Адаптер - абстракция более высокого уровня. Адаптер контейнера это контейнер. Но пишут и вместе:
Класс std::queue -- это контейнер-адаптер, предоставляющий функционал структуры данных типа очередь, работающей по принципу FIFO (first-in, first-out) первым вошел -- первым вышел.
https://ru.cppreference.com/w/cpp/container/queue
_stanislav, тебя точность названий интересует или
Цитата Сообщение от _stanislav Посмотреть сообщение
Какие плюсы от использования адаптеров, queue, stack, priority_queue
?
Адаптер это паттерн замещения одного интерфейса другим интерфейсом.
Цитата Сообщение от по научному (хотя нет стандартных формулировок)
Паттерн Adapter, представляющий собой программную обертку над существующими классами, преобразует их интерфейсы к виду, пригодному для последующего использования.
То есть, подразумевается, что он был не пригоден... Я не люблю такие формулировки.
http://cpp-reference.ru/patter... s/adapter/
Предполагаю, в этом и есть их смысл. Если массоны опять чего-то там не сокрыли. Но вряд ли.
1
"C with Classes"
1640 / 1262 / 476
Регистрация: 16.08.2014
Сообщений: 5,271
Записей в блоге: 1
03.03.2020, 14:42  [ТС] 5
IGPIGP, значит это единственная причина по которой нужно использовать адаптеры.
Цитата Сообщение от _stanislav Посмотреть сообщение
Пока я нашел только один, это возможность более ясно показать свои намерения в коде.
0
Комп_Оратор)
Эксперт по математике/физике
8675 / 4391 / 596
Регистрация: 04.12.2011
Сообщений: 13,137
Записей в блоге: 16
03.03.2020, 14:45 6
Цитата Сообщение от _stanislav Посмотреть сообщение
IGPIGP, значит это единственная причина по которой нужно использовать адаптеры.
_stanislav, представь, что каждый вылепил себе свой вектор. А тебе для них нужно библиотеку написать, которая использует их вектора. Стандартная библиотека, это от слова стандарт. Других, более подходящих по смыслу объяснений не видно.
0
6643 / 4471 / 1816
Регистрация: 07.05.2019
Сообщений: 13,562
Записей в блоге: 1
03.03.2020, 14:55 7
Цитата Сообщение от _stanislav Посмотреть сообщение
IGPIGP, значит это единственная причина по которой нужно использовать адаптеры.
priority_queue ещё и сортировку делает.
2
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.03.2020, 14:55

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь.

Функторы, предикаты, функциональные адаптеры, лямбда-функции
Вступление Статья ориентирована на программистов С++, поверхностно знающих/желающих узнать STL,...

Адаптеры сети
Здравствуйте. Ноут asus n-series 76vb. После установки win10 начал барахлить wifi...

Сетевые адаптеры!
Есть сервер DELL R320 под управлением Windows 2008 R2 Standart. Сняли с него образ. Имеется ещё...

Адаптеры WI-FI не найдены
если ввести ip addr show то показывает lo и eth0. Никакого wlan нету. NetworkManager включен (по ...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

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