System::Collections::Generic::Queue class

Queue class

Queue class forward declaration.

template<typename T>class Queue : public System::Collections::Generic::IEnumerable<T>
ParameterΠεριγραφή
TΤύπος στοιχείου.

Nested classes

Μέθοδοι

ΜέθοδοςΠεριγραφή
virtual Clear()Διαγράφει όλα τα στοιχεία στην ουρά.
virtual Contains(const T&) constΕλέγχει αν η ουρά περιέχει συγκεκριμένο στοιχείο χρησιμοποιώντας τον τελεστή == για τη σύγκριση των στοιχείων.
data()Πρόσβαση στη βασική δομή δεδομένων.
data() constΠρόσβαση στη βασική δομή δεδομένων.
Dequeue()Αποκτά το στοιχείο από την αρχή της ουράς.
Enqueue(const T&)Τοποθετεί το στοιχείο στο τέλος της ουράς.
virtual get_Count() constΑποκτά τον αριθμό των στοιχείων στην ουρά.
GetEnumerator() overrideΑποκτά τον απαριθμητή για επανάληψη μέσω της ουράς.
Peek()Αποκτά το στοιχείο από την αρχή της ουράς, αλλά δεν το αφαιρεί από την ουρά.
Queue()Δημιουργεί κενή ουρά.
Queue(int)Δημιουργεί κενή ουρά.
Queue(const SharedPtr<IEnumerable<T>>&)Κατασκευαστής αντιγραφής.
virtualizeBeginConstIterator() const overrideΛαμβάνει την υλοποίηση του begin const iterator για το τρέχον κοντέινερ.
virtualizeBeginIterator() overrideΛαμβάνει την υλοποίηση του begin iterator για το τρέχον κοντέινερ.
virtualizeEndConstIterator() const overrideΛαμβάνει την υλοποίηση του end const iterator για το τρέχον κοντέινερ.
virtualizeEndIterator() overrideΛαμβάνει την υλοποίηση του end iterator για το τρέχον κοντέινερ.

Typedefs

TypedefΠεριγραφή
IEnumerablePtrΚοντέινερ στοιχείων του ίδιου τύπου.
IEnumeratorPtrEnumerator τύπος.
queue_tΠληροφορίες RTTI.
ValueTypeΑυτός ο τύπος.

Παρατηρήσεις

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-class.
  auto queue = MakeObject<Queue<int>>();

  // Γεμίστε την ουρά.
  queue->Enqueue(1);
  queue->Enqueue(2);
  queue->Enqueue(3);

  // Εκτυπώστε το πρώτο στοιχείο της ουράς. Η μέθοδος Peek δεν αφαιρεί στοιχείο από την ουρά.
  std::cout << queue->Peek() << std::endl;
  // Εκτυπώστε τα στοιχεία της ουράς.
  PrintItems(queue);

  // Εκτυπώστε το πρώτο στοιχείο της ουράς. Η μέθοδος Dequeue αφαιρεί στοιχείο από την ουρά.
  std::cout << queue->Dequeue() << std::endl;
  // Εκτυπώστε τα στοιχεία της ουράς.
  PrintItems(queue);

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

Δείτε επίσης