只是一個關於如何複製工作的問題......我需要一些驗證以達到心理健康的目的。如果我有一個:STL Algo Library副本()
multiset<pair<double, string> > myMultiset;
,我特林打印出內容來安慰......我應該使用時預期的錯誤:
copy(myMultiset.begin(), myMultiset.end(), ostream_iterator</.../>(cout, " "));
這是因爲A.爲ostream_iterator我想傳遞類型「對」,ostream不會喜歡?如果multiset是由「pair」組成的,即使我只是將類型字符串傳遞給「ostream」,我想嘗試一次傳遞兩個元素會導致錯誤。有沒有一個迭代器只會遍歷鍵或值?有沒有一種乾淨的方式來處理這個問題?每次我最終只寫「for()」循環,以便我可以在「iter-> first」和「iter-> second」中獲得內容......我是STL Algo的新手,但我喜歡這個想法的清潔度,我想利用他們的能力......儘管如此多minutae ...
你「感覺」?你爲什麼不嘗試呢? – svick 2012-01-29 14:51:04
答案在這裏:http://stackoverflow.com/questions/312749/providing-an-iterator-for-the-first-element-of-a-container-of-pairs – 2012-01-29 14:51:18
我實際上已經嘗試過其中的變體,計算出去的地方。認爲我試圖做得太快...... – MCP 2012-01-29 17:29:49