queue хранится в защищенной пе
Автор admin
Среда, 10 июня 2009 11:32
queue хранится в защищенной переменной класса (которой в соответствии со стандартом С++ назначается идентификатор с), можно объявить производный класс и получить доступ к базовой реализации: //: C07:PriorityQueue4.cpp // Получение доступа к базовой реализации nclude nclude nclude linclude linclude linclude using namespace std: class PQI : public priority_queue { public: vector& impK) { return c; } }: int mainO { PQI pqi: srand(time(0)); for(int i = 0: i < 100: i++) pqi.push(rand() % 25); copy(pqi .impK).beginO. pqi .implO.endO. ostream_iterator(cout. ” “)); cout « endl: while(!pqi.emptyО) { cout « pqi .topO « ‘ ‘: pqi .popO: } } ///:- При запуске этой программы выясняется, что элементы вектора не упорядочены по убыванию. Другими словами, порядок их следования отличен от того, который будет получен последовательными вызовами функции рор() для приоритетной очереди. Похоже, если вы хотите создать вектор, имитирующий приоритетную очередь, придется делать это вручную — примерно так: Приоритетная очередь 385 //: C07:PriorityQueue5.cpp
Комментарии закрыты.
Последние комментарии