System::Collections::Generic::IEnumerator क्लास

IEnumerator class

एन्यूमरेटर का इंटरफ़ेस जो कुछ तत्वों के माध्यम से इटरेट करने के लिए उपयोग किया जा सकता है। इस क्लास की ऑब्जेक्ट्स को केवल System::MakeObject() फ़ंक्शन का उपयोग करके ही आवंटित किया जाना चाहिए। इस प्रकार का इंस्टेंस स्टैक पर या operator new का उपयोग करके कभी न बनाएँ, क्योंकि इससे रनटाइम त्रुटियाँ और/या असर्शन फॉल्ट्स हो सकते हैं। हमेशा इस क्लास को System::SmartPtr पॉइंटर में रैप करें और इस पॉइंटर का उपयोग फ़ंक्शनों को आर्ग्यूमेंट के रूप में पास करने के लिए करें।

template<typename T>class IEnumerator : public virtual System::IDisposable,
                                        public System::Details::EnumeratorBasedIterator<T>,
                                        protected System::Details::IteratorPointerUpdater<T, false>
पैरामीटरविवरण
Tतत्व प्रकार।

विधियाँ

विधिविवरण
AsVirtualizedIterator()VirtualizedIterator क्लास द्वारा उपयोग किए जाने वाले इटररेटर को तैयार करता है।
CloneIterator() const overrideवर्तमान इटरेटर की क्लोन बनाता है।
virtual Current() constवर्तमान तत्व प्राप्त करता है।
virtual get_Current() constवर्तमान तत्व प्राप्त करता है।
IEnumerator()
IncrementIterator() overrideइटररेटर को एक कदम आगे ले जाता है।
InitializeIterator() overrideपहला MoveNext() कॉल करता है और एन्यूमरेटर ऑब्जेक्ट को VirtualizedIterator द्वारा उपयोग के लिए तैयार करता है।
MarkOwnedByVirtualizedIterator()वर्चुअलाइज़्ड इटररेटर द्वारा स्वामित्व वाले एन्यूमरेटर को चिह्नित करता है।
virtual MoveNext()एनेमरेटर को अगले तत्व पर ले जाता है। यदि पहले कोई तत्व संदर्भित नहीं था, तो उपलब्ध पहले तत्व को संदर्भित करता है। यदि कंटेनर के अंत तक पहुँचा गया, तो कुछ नहीं करता।
virtual Reset()एन्यूमरेटर को पहले तत्व से पहले की स्थिति पर रीसेट करता है।
virtual ~IEnumerator()

Typedefs

टाइपडिफ़विवरण
ValueTypeवैल्यू टाइप।

टिप्पणियाँ

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

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

int main()
{
  // List-क्लास का इंस्टेंस बनाएं।
  auto collection = MakeObject<List<int>>();

  // सूची को भरें।
  collection->Add(1);
  collection->Add(2);
  collection->Add(3);

  // सूची का इटेरेटर प्राप्त करें।
  auto enumerator = collection->GetEnumerator();

  while (enumerator->MoveNext())
  {
    // वर्तमान तत्व प्राप्त करें और उसे प्रिंट करें।
    std::cout << enumerator->get_Current() << ' ';
  }

  // इटेरेटर को रीसेट करें।
  enumerator->Reset();

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

संबंधित देखें