System::Collections::Generic::Queue sınıfı

Queue class

Queue class forward declaration.

template<typename T>class Queue : public System::Collections::Generic::IEnumerable<T>
ParametreAçıklama
TEleman tipi.

Nested classes

Yöntemler

YöntemAçıklama
virtual Clear()Kuyruktaki tüm öğeleri siler.
virtual Contains(const T&) constKuyruğun belirli bir öğeyi içerip içermediğini, öğeleri karşılaştırmak için == operatörünü kullanarak kontrol eder.
data()Altta yatan veri yapısı erişicisi.
data() constAltta yatan veri yapısı erişicisi.
Dequeue()Kuyruğun başından öğeyi alır.
Enqueue(const T&)Öğeyi kuyruğun sonuna koyar.
virtual get_Count() constKuyruktaki öğe sayısını alır.
GetEnumerator() overrideKuyruğu yinelemek için bir enumerator alır.
Peek()Kuyruğun başından öğeyi alır, ancak kuyruğun içinden kaldırmaz.
Queue()Boş bir kuyruk oluşturur.
Queue(int)Boş bir kuyruk oluşturur.
Queue(const SharedPtr<IEnumerable<T>>&)Kopya yapıcı.
virtualizeBeginConstIterator() const overrideMevcut kapsayıcı için begin const yineleyicisinin uygulamasını alır.
virtualizeBeginIterator() overrideMevcut kapsayıcı için begin yineleyicisinin uygulamasını alır.
virtualizeEndConstIterator() const overrideMevcut kapsayıcı için end const yineleyicisinin uygulamasını alır.
virtualizeEndIterator() overrideMevcut kapsayıcı için end yineleyicisinin uygulamasını alır.

Typedefs

TypedefAçıklama
IEnumerablePtrAynı tipteki öğelerin konteyneri.
IEnumeratorPtrEnumerator türü.
queue_tRTTI bilgisi.
ValueTypeBu tip.

Açıklamalar

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()
{
  // Queue sınıfı örneğini oluştur.
  auto queue = MakeObject<Queue<int>>();

  // Kuyruğu doldur.
  queue->Enqueue(1);
  queue->Enqueue(2);
  queue->Enqueue(3);

  // İlk kuyruk öğesini yazdır. Peek yöntemi kuyruğun bir öğesini kaldırmaz.
  std::cout << queue->Peek() << std::endl;
  // Kuyruk öğelerini yazdır.
  PrintItems(queue);

  // İlk kuyruk öğesini yazdır. Dequeue yöntemi, kuyruğun bir öğesini kaldırır.
  std::cout << queue->Dequeue() << std::endl;
  // Kuyruk öğelerini yazdır.
  PrintItems(queue);

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

Ayrıca Bakınız