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
टिप्पणियाँ
#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
*/
संबंधित देखें