나는 같은 것을 사용합니다. 지도가 비어있는 경우 map :: begin() 반환에 대한 정보를 찾을 수 없습니다.빈지도에 대한 map :: begin()의 반환 값은 무엇입니까? 이 맵이 비어있는 경우에도 작동한다면 난 그냥 궁금 해서요</p> <pre><code>map<string, Data>::iterator it = mymap->begin(); map<string, Data>::iterator end = mymap->end(); while (it != end) { // do stuff ++it; } </code></pre> <p>:
답변
지도가 비어있는 경우 begin
과 end
반복자는 동일하며 즉 mymap->end()
을 반환합니다.
이것은 사실이며 맵이 비어있을 경우 사용하기 전에 항상'begin()'에 의해 반환 된 반복자를'end()'와 비교해야합니다 (루프가'while() ...'을 어떻게 사용하는지 주목하십시오) 'do ... while()', 제어 된 명령문을 실행하기 전에 올바르게 테스트합니다.) 당신은 값이 무엇인지를 물어 봅니다. 그것은 end()와 똑같이 비교할 수 있고, 실제 요소에 반복자가 필요하다는 것을 포함 할 수 있습니다. 표준은 컴파일러/구현에서 적절한 값을 선택합니다. –
'map :: empty()'를 테스트하는 것이 더 낫다고 생각하지 않습니까? –
이터레이터를 지나치게 늘리지 말아야합니다. 반복자를 빈지도로 만드십시오. 따라서 사용하기 전에지도 및/또는 반복기를 검사하기 위해 if 문을 코드에 포함시켜야합니다.
'if' 문이 유일한 종류의 조건문은 아니며, 질문에 사용 된'while'도 잘 작동합니다. –
빈지도의 경우 'it == end'이됩니다. 그래서 코드는 루프 동안 들어 가지 않습니다. 즉, 반복자를 역 참조하는 데 문제가 없을 것임을 의미합니다. –
- 1. 'std :: vector <T> :: iterator it;' 나는이 기능을 가지고
- 2. rspec "it"string
- 3. 인쇄물과 같은 것 END << END; C++에서?
- 4. 벡터를 전달 <string> :: iterator
- 5. PHP는 오류 <<< _ END 사용하여 XAMPP
- 6. Ruby에서 Begin/End/While 중에
- 7. iterator :: end()가 왜 정적 멤버가 아니며 string :: npos와 비슷하지 않은 이유는 무엇입니까?
- 8. Visual Studio에서 mine :: iterator <> 대신 <: iterator <>를 사용하는 이유는 무엇입니까?
- 9. stxxl 어설 션`it! = root_node_.end() '가 실패했습니다
- 10. C++ : 연산자에 대한 어떤 경기는 <시 부스트 :: unordered_map도 반복하려고 <string,int>
- 11. C++ 벡터 <T> :: iterator 연산자 +
- 12. C++ :지도 <string, int>을 반복기를 통해 벡터 <map <string, int>>에 밀어 넣으시겠습니까?
- 13. :</p> <p><strong>spec_helper (내가 바로 <code>end</code> 전에 파일의 맨 아래에 넣어) :</strong> OmniAuth
- 14. JPA Map <String, String> mapping
- 15. 이 izip() 구현이 작동하지 않는 이유는 무엇입니까?</p> <pre><code>def izip(*iterables): its = tuple(iter(it) for it in iterables) while True: yield tuple(next(it) for it in its) # ERROR # yield tuple(map(next, its)) # OK </code></pre> <p>내 코드 (매뉴얼에 주어진)이 ERROR 라인 및 참조 구현을 사용
- 16. Vim에 <Ctrl> + <Shift> + <End>의 등가는 무엇입니까?
- 17. Elementwise IT in IT ++
- 18. Map <String, string>의 string []을 얻는 방법
- 19. 목록 만들기 <string> 사전에서 <string, string>
- 20. 는 <String, ?>
- 21. 은 C++에서 map <string, string []>이 가능합니까?
- 22. <String> to String
- 23. 문제는 <String>
- 24. map :: end from C++에서 사용하는 방법
- 25. 벡터 <int> :: iterator 대 list <int> :: std :: map의 반복자 키
- 26. StandartError를 사용하는 방법? 나는 다음과 같은 오류 얻을</p> <pre><code>#!/usr/bin/env ruby class WrongNumberOfPlayersError < StandartError ; end class NoSuchStrategyError < StandartError ; end </code></pre> <p>:
- 27. <<< _ END HTML 태그 내에 연관 배열을 사용하려면 어떻게해야합니까?
- 28. System.Collections.Generic.Dictionary <string, string>
- 29. ArrayList의 값이 잘못되었습니다. <HashMap <String, String >>
- 30. 목록에 대한 구분 가능 구현 <Map <String, String >>
방금 테스트 할 작은 프로그램을 만드는 것이 좋습니다. –
'std :: distance (begin, end)'는 0이됩니다. –
니스! 나는이 기능을 몰랐다. – HWende