Добавление элементов в std::queue при его инициализации ⇐ C++
-
Гость
Добавление элементов в std::queue при его инициализации
Как добавить элементы в приведенный ниже std::queue при его инициализации.
std::unique_ptr _queue Я пробовал сделать следующее, но это не сработало.
#include #include #include #include интервал основной() { // Создаем уникальный указатель на очередь уникальных указателей на строки std::unique_ptr _queue = std::make_unique( std::queue(std::make_unique("Привет")) ); вернуть 0; } Ошибка
main.cpp: В функции int main(): main.cpp:10:92: ошибка: нет соответствующей функции для вызова «std::queue > >::queue(std::_MakeUniq >::__single_object)» 10 | std::queue(std::make_unique("Привет")) | ^ В файле, включенном из /usr/include/c++/11/queue:64, из main.cpp:2: /usr/include/c++/11/bits/stl_queue.h:195:9: примечание: кандидат: 'шаблон std::queue::queue(std::queue&&, const _Alloc&) [с _Alloc = _Alloc; _Требуется = _Требуется; _Tp = std::unique_ptr >; _Sequence = std::deque >, std::allocator > > >]’ 195 | очередь (очередь&& __q, const _Alloc& __a) | ^~~~~ /usr/include/c++/11/bits/stl_queue.h:195:9: примечание: вывод/замена аргумента шаблона не удалась: main.cpp:10:92: примечание: кандидат ожидает 2 аргумента, 1 предоставлен 10 | std::queue(std::make_unique("Привет")) | ^ В файле, включенном из /usr/include/c++/11/queue:64, из main.cpp:2: /usr/include/c++/11/bits/stl_queue.h:191:9: примечание: кандидат: 'template std::queue::queue(const std::queue&, const _Alloc&) [с _Alloc = _Alloc; _Требуется = _Требуется; _Tp = std::unique_ptr >; _Sequence = std::deque >, std::allocator > > >]’ 191 | очередь (константная очередь& __q, константа _Alloc& __a) | ^~~~~ /usr/include/c++/11/bits/stl_queue.h:191:9: примечание: вывод/замена аргумента шаблона не удалась: main.cpp:10:92: примечание: кандидат ожидает 2 аргумента, 1 предоставлен 10 | std::queue(std::make_unique("Привет")) | ^ В файле, включенном из /usr/include/c++/11/queue:64,
Как добавить элементы в приведенный ниже std::queue при его инициализации.
std::unique_ptr _queue Я пробовал сделать следующее, но это не сработало.
#include #include #include #include интервал основной() { // Создаем уникальный указатель на очередь уникальных указателей на строки std::unique_ptr _queue = std::make_unique( std::queue(std::make_unique("Привет")) ); вернуть 0; } Ошибка
main.cpp: В функции int main(): main.cpp:10:92: ошибка: нет соответствующей функции для вызова «std::queue > >::queue(std::_MakeUniq >::__single_object)» 10 | std::queue(std::make_unique("Привет")) | ^ В файле, включенном из /usr/include/c++/11/queue:64, из main.cpp:2: /usr/include/c++/11/bits/stl_queue.h:195:9: примечание: кандидат: 'шаблон std::queue::queue(std::queue&&, const _Alloc&) [с _Alloc = _Alloc; _Требуется = _Требуется; _Tp = std::unique_ptr >; _Sequence = std::deque >, std::allocator > > >]’ 195 | очередь (очередь&& __q, const _Alloc& __a) | ^~~~~ /usr/include/c++/11/bits/stl_queue.h:195:9: примечание: вывод/замена аргумента шаблона не удалась: main.cpp:10:92: примечание: кандидат ожидает 2 аргумента, 1 предоставлен 10 | std::queue(std::make_unique("Привет")) | ^ В файле, включенном из /usr/include/c++/11/queue:64, из main.cpp:2: /usr/include/c++/11/bits/stl_queue.h:191:9: примечание: кандидат: 'template std::queue::queue(const std::queue&, const _Alloc&) [с _Alloc = _Alloc; _Требуется = _Требуется; _Tp = std::unique_ptr >; _Sequence = std::deque >, std::allocator > > >]’ 191 | очередь (константная очередь& __q, константа _Alloc& __a) | ^~~~~ /usr/include/c++/11/bits/stl_queue.h:191:9: примечание: вывод/замена аргумента шаблона не удалась: main.cpp:10:92: примечание: кандидат ожидает 2 аргумента, 1 предоставлен 10 | std::queue(std::make_unique("Привет")) | ^ В файле, включенном из /usr/include/c++/11/queue:64,
Мобильная версия