プライオリティ キューにその署名があるのはなぜですか?
std::priority_queue<int, std::vector<int>, std::greater<int> > third;
何のためにstd::vector<int>
?たとえば、キューに ints のみを格納する必要がある場合は?
プライオリティ キューにその署名があるのはなぜですか?
std::priority_queue<int, std::vector<int>, std::greater<int> > third;
何のためにstd::vector<int>
?たとえば、キューに ints のみを格納する必要がある場合は?
これらは のテンプレート引数ですpriority_queue
。2 つ目は、値を格納するために使用されるバッキング コンテナーです。この場合は、ベクター (既定のコンテナー) を使用します。上記の例では、デフォルトの比較述語を変更できるように渡されますstd::greater
(つまりpriority_queue
、最小値が一番上にある a を持つ)。ここでクラス宣言を見てください。