Поделиться через


priority_queue::priority_queue (STL/CLR)

Создает объект адаптера контейнера.

    priority_queue();
    priority_queue(priority_queue<Value, Container> right);
    priority_queue(priority_queue<Value, Container> right);
    explicit priority_queue(value_compare^ pred);
    priority_queue(value_compare^ pred, container_type% cont);
    template<typename InIt>
        priority_queue(InIt first, InIt last);
    template<typename InIt>
        priority_queue(InIt first, InIt last,
            value_compare^ pred);
    template<typename InIt>
        priority_queue(InIt first, InIt last,
            value_compare^ pred, container_type% cont);

Параметры

  • cont
    Контейнер, в который выполняется копирование.

  • first
    Начало диапазона, который необходимо вставить.

  • last
    Элемент диапазона, который необходимо вставить.

  • pred
    Предикат для упорядочения управляемой последовательности.

  • правый
    Объект или диапазон для вставки.

Заметки

Конструктор:

priority_queue();

создает пустой создает программу-оболочкуый контейнер с предикатом упорядочения по умолчанию.Используется для указания пустую initial управляемой последовательности с предикатом упорядочения по умолчанию.

Конструктор:

priority_queue(priority_queue<Value, Container>% right);

создает создает программу-оболочкуый контейнер, который является копией right.get_container() с предикатом упорядочения right.value_comp().Используется для определения управляемой последовательности, копия исходной последовательности отслеживаемой объектом очереди right с тем же упорядочение предиката.

Конструктор:

priority_queue(priority_queue<Value, Container>^ right);

создает создает программу-оболочкуый контейнер, который является копией right->get_container() с предикатом упорядочения right->value_comp().Используется для определения управляемой последовательности, копия исходной последовательности отслеживаемой объектом очереди *right с тем же упорядочение предиката.

Конструктор:

explicit priority_queue(value_compare^ pred);

создает пустой создает программу-оболочкуый контейнер с предикатом упорядочения pred.Используется для указания пустую initial упорядочения управляемой последовательности с заданным предикатом.

Конструктор:

priority_queue(value_compare^ pred, container_type cont);

создает пустой создает программу-оболочкуый контейнер с предикатом упорядочения pred, а затем помещает все элементы cont используется для указания начальной управляемую последовательность из существующего упорядочения контейнера с заданным предикатом.

Конструктор:

template<typename InIt>

priority_queue(InIt first, InIt last);

создает пустой создает программу-оболочкуый контейнер с предикатом по умолчанию, а затем помещает упорядочения последовательности [first,last).Используется для указания начальной управляемую последовательность из указанного eqeuence, упорядочение с заданным предикатом.

Конструктор:

template<typename InIt>

priority_queue(InIt first, InIt last,

value_compare^ pred);

создает пустой создает программу-оболочкуый контейнер с предикатом упорядочения pred, а затем помещает последовательность [first,last).Используется для указания начальной управляемую последовательность из указанного seqeuence, упорядочение с заданным предикатом.

Конструктор:

template<typename InIt>

priority_queue(InIt first, InIt last,

value_compare^ pred, container_type% cont);

создает пустой создает программу-оболочкуый контейнер с предикатом упорядочения pred, а затем помещает все элементы cont а также последовательность [first,last).Используется для указания начальной управляемую последовательность из существующего сегмента и указанного seqeuence, упорядочение с заданным предикатом.

Пример

// cliext_priority_queue_construct.cpp 
// compile with: /clr 
#include <cliext/queue> 
#include <cliext/deque> 
 
typedef cliext::priority_queue<wchar_t> Mypriority_queue; 
typedef cliext::deque<wchar_t> Mydeque; 
int main() 
    { 
// construct an empty container 
    Mypriority_queue c1; 
    Mypriority_queue::container_type^ wc1 = c1.get_container(); 
    System::Console::WriteLine("size() = {0}", c1.size()); 
 
    c1.push(L'a'); 
    c1.push(L'b'); 
    c1.push(L'c'); 
    for each (wchar_t elem in wc1) 
        System::Console::Write(" {0}", elem); 
    System::Console::WriteLine(); 
 
// construct with an ordering rule 
    Mypriority_queue c2 = cliext::greater<wchar_t>(); 
    System::Console::WriteLine("size() = {0}", c2.size()); 
 
    for each (wchar_t elem in wc1) 
        c2.push(elem); 
    for each (wchar_t elem in c2.get_container()) 
        System::Console::Write(" {0}", elem); 
    System::Console::WriteLine(); 
 
// construct with an ordering rule by copying an underlying container 
    Mypriority_queue c2x = 
        gcnew Mypriority_queue(cliext::greater<wchar_t>(), *wc1); 
   for each (wchar_t elem in c2x.get_container()) 
        System::Console::Write(" {0}", elem); 
    System::Console::WriteLine(); 
 
// construct with an iterator range 
    Mypriority_queue c3(wc1->begin(), wc1->end()); 
    for each (wchar_t elem in c3.get_container()) 
        System::Console::Write(" {0}", elem); 
    System::Console::WriteLine(); 
 
// construct with an iterator range and an ordering rule 
    Mypriority_queue c4(wc1->begin(), wc1->end(), 
        cliext::greater<wchar_t>()); 
    for each (wchar_t elem in c4.get_container()) 
        System::Console::Write(" {0}", elem); 
    System::Console::WriteLine(); 
 
// construct with an iterator range, another container, and an ordering rule 
    Mypriority_queue c5(wc1->begin(), wc1->end(), 
        cliext::greater<wchar_t>(), *wc1); 
    for each (wchar_t elem in c5.get_container()) 
        System::Console::Write(" {0}", elem); 
    System::Console::WriteLine(); 
 
// construct from a generic container 
    Mypriority_queue c6(c3); 
    for each (wchar_t elem in c6.get_container()) 
        System::Console::Write(" {0}", elem); 
    System::Console::WriteLine(); 
 
// construct by copying another container 
    Mypriority_queue c7(%c3); 
    for each (wchar_t elem in c7.get_container()) 
        System::Console::Write(" {0}", elem); 
    System::Console::WriteLine(); 
 
// construct with an ordering rule, by copying an underlying container 
    Mypriority_queue c8 = 
        gcnew Mypriority_queue(cliext::greater<wchar_t>(), *wc1); 
    for each (wchar_t elem in c8.get_container()) 
        System::Console::Write(" {0}", elem); 
    System::Console::WriteLine(); 
 
    return (0); 
    } 
 
  

Требования

заголовок: <очередь cliext/>

Cliext пространство имен:

См. также

Ссылки

priority_queue (STL/CLR)

priority_queue::assign (STL/CLR)

priority_queue::generic_container (STL/CLR)

priority_queue::operator= (STL/CLR)