Q. Как создать стандартную очередь (экземпляр класса std::queue), состоящую из элементов пользовательского типа?
По идее, Страуструп пишет, что никаких ограничений для этого нет, однако все примеры дает с int и string. А вот, что хотелось бы видеть
struct Q_el
{
int v; // vertex
int w; // vertex
int c; // vw-weight
};
queue<Q_el, list<Q_e> > Q;
В последней строке провоидлись вароиации на тему
queue<Q_el, list<Q_e>, allocate > Q;
queue<Q_el> Q;
Однако g++ вываливается с ошибкой
[unforgiven | /home/unforgiven/DO : 18:46:00] $ g++ zad1.cpp -o zad1
zad1.cpp: In function `int main()':
zad1.cpp:24: error: `main()::Q_el' uses local type `main()::Q_el'
zad1.cpp:24: error: trying to instantiate `template<class _Alloc> class std::allocator'
zad1.cpp:24: error: template argument 2 is invalid
zad1.cpp:24: error: template argument 2 is invalid
zad1.cpp:24: error: invalid type in declaration before ';' token
Ответ на:
комментарий
от Reset

Ответ на:
комментарий
от Unforgiven

Ответ на:
комментарий
от Reset
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум как правильно перегрузить оператор? (2007)
- Форум c++. forward declared typedef (2011)
- Форум gcc-4.x и шаблоны (2005)
- Форум не удается скомпилировать файл (2011)
- Форум C++, сложный typedef. (2008)
- Форум Валиден ли код? (2018)
- Форум Шаблон в шаблоне (2012)
- Форум проблемы с переходом на gcc3.3.1 (2003)
- Форум Шаблонный класс из шаблонной функции (2014)
- Форум Вопрос по наследованию шаблона в C++ (2013)