System::Collections::Generic::Queue class

Queue class

Queue class forward declaration.

template<typename T>class Queue : public System::Collections::Generic::IEnumerable<T>
ParameterDeskripsi
TTipe elemen.

Nested classes

Metode

MetodeDeskripsi
virtual Clear()Menghapus semua elemen dalam antrian.
virtual Contains(const T&) constMemeriksa apakah antrian berisi elemen tertentu menggunakan operator == untuk membandingkan elemen.
data()Pengakses struktur data dasar.
data() constPengakses struktur data dasar.
Dequeue()Mendapatkan item dari awal antrian.
Enqueue(const T&)Menempatkan item ke akhir antrian.
virtual get_Count() constMendapatkan jumlah elemen dalam antrian.
GetEnumerator() overrideMendapatkan enumerator untuk mengiterasi antrian.
Peek()Mendapatkan item dari awal antrian, tetapi tidak menghapusnya dari antrian.
Queue()Membuat antrian kosong.
Queue(int)Membuat antrian kosong.
Queue(const SharedPtr<IEnumerable<T>>&)Konstruktor penyalinan.
virtualizeBeginConstIterator() const overrideMendapatkan implementasi begin const iterator untuk kontainer saat ini.
virtualizeBeginIterator() overrideMendapatkan implementasi begin iterator untuk kontainer saat ini.
virtualizeEndConstIterator() const overrideMendapatkan implementasi end const iterator untuk kontainer saat ini.
virtualizeEndIterator() overrideMendapatkan implementasi end iterator untuk kontainer saat ini.

Typedefs

TypedefDeskripsi
IEnumerablePtrKontainer elemen dengan tipe yang sama.
IEnumeratorPtrEnumerator tipe.
queue_tInformasi RTTI.
ValueTypeTipe ini.

Catatan

Queue container wrapping STL list. Objects of this class should only be allocated using System::MakeObject() function. Never create instance of this type on stack or using operator new, as it will result in runtime errors and/or assertion faults. Always wrap this class into System::SmartPtr pointer and use this pointer to pass it to functions as argument.

#include <system/collections/queue.h>
#include <system/smart_ptr.h>

using namespace System;
using namespace System::Collections::Generic;

void PrintItems(const SmartPtr<IEnumerable<int>> &queue)
{
  for (const int item: queue)
  {
    std::cout << item << ' ';
  }
  std::cout << std::endl;
}

int main()
{
  // Buat instance kelas Queue.
  auto queue = MakeObject<Queue<int>>();

  // Isi antrian.
  queue->Enqueue(1);
  queue->Enqueue(2);
  queue->Enqueue(3);

  // Cetak item pertama antrian. Metode Peek tidak menghapus item dari antrian.
  std::cout << queue->Peek() << std::endl;
  // Cetak item-item antrian.
  PrintItems(queue);

  // Cetak item pertama antrian. Metode Dequeue menghapus item dari antrian.
  std::cout << queue->Dequeue() << std::endl;
  // Cetak item-item antrian.
  PrintItems(queue);

  return 0;
}
/*
This code example produces the following output:
1
1 2 3
1
2 3
*/

Lihat Juga