2013-02-27 21 views
0

我怎樣才能找到統計員的最終位置?對於這個枚舉器,我沒有在文檔中看到任何atEnd方法。我怎樣才能找到統計員的最終位置?

SortedSet<Button ^>::Enumerator^ enumer = btnSet->GetEnumerator(); 
enumer->atEnd(); 

我的錯誤

error 'atEnd' : is not a member of 'System::Collections::Generic::SortedSet<T>::Enumerator' 

回答

1

是您打算寫這樣while (enumer != btnSet->end())一個循環,如許多C++迭代器常見?

您可以檢查是否一個枚舉還沒有結束時,通過檢查的MoveNext()的返回值,所以循環會是這樣:

SortedSet<Button^>::Enumerator^ enumer = btnSet->GetEnumerator(); 
while (enumer->MoveNext()) { 
    Button^ btn = enumer->Current; 
    // do stuff 
} 

你也該集合使用for each循環迭代,看起來有點清潔:

for each (Button^ btn in btnSet) { 
    // do stuff 
}