++ C의 3 개 요소와 맵에 삽입이 같은지도가 필요합니다.은 검색 및
은 검색 및
답변
map
은 하나의 키 유형 만 하나의 데이터 유형으로 매핑 할 수 있습니다. 데이터에 2 개의 요소가 포함되어 있으면 구조체 또는 std::pair
을 사용하십시오.
typedef std::map<int, std::pair<float, char> > Maptype;
...
Maptype m;
m[123] = std::make_pair(0.5f, 'c');
...
std::pair<float, char> val = m[245];
std::cout << "float: " << val.first << ", char: " << val.second << std::endl;
참조를 할당하여지도에서 쌍을 복사하지 마십시오. std :: pair
세 가지 요소가있을 수 없습니다. STL map
은 키 - 값 쌍을 저장합니다. 당신은 당신이 키로 사용할 것을 결정할 필요가 있습니다. 일단 별도의지도에 아마, 둥지 다른 두를 수 수행하고로 사용하십시오 operator[]
또는 insert
멤버 함수를 사용하여지도에 삽입하기 위해
typedef std::map<int, std::map<float, char> > MapType;
. find
구성원 기능을 사용하여 검색 할 수 있습니다.
MapType m;
// insert
m.insert(std::make_pair(4, std::make_pair(3.2, 'a')));
m[ -4 ] = make_pair(2.4, 'z');
// fnd
MapType::iterator i = m.find(-4);
if (i != m.end()) { // item exists ...
}
또한 Boost.Tuple을 볼 수 있습니다.
정보 주셔서 감사합니다. 지도에서 쌍을 어떻게 검색합니까? m.find가 될 것입니까? (STD :: make_pair (3.2, 'a');? – John
@ 존 : 항상 키를 검색합니다. 키가 'pair
@dirkgently : 위의 예제는 두 개의 클래스 포인터 인스턴스와 문자열을 사용하면 작동하지 않습니다. typedef std :: map
- 1. 은 IList - LINQ 필터링 및
- 2. UISearchBar - "검색 결과 버튼"은 무엇입니까?
- 3. 은 검색 엔진의 데이터베이스에 대한 액세스가 필요합니다.
- 4. 은 파이썬에서 이진 검색 트리를 나타냅니다.
- 5. 은 완전한 기능을 갖춘 음성 검색 알고리즘입니다.
- 6. 은 하나의 구별 및
- 7. 은 JCIFS, 안드로이드 및
- 8. 은 UINavigationController 및 jQuery과
- 9. 검색 및
- 10. Lucene.net 검색 및 밑줄
- 11. 은 C#을 및 String.format
- 12. 은 EclipseLink : ObjectArrayMapping 및 ClassDescriptor
- 13. 은 서버 루트 및 MapPath를()
- 14. 은 UINavigationController 및 modalViewController 문제
- 15. android 검색 배열 및 오디오 파일을 검색
- 16. Solr 검색 결과 및 문서 위치 검색
- 17. 은 캔트 내가 넣어 가지고 라이브러리 검색 경로에 부스트
- 18. 및 검색 할
- 19. 검색 로직 및 알고리즘
- 20. jQuery가 검색 및 레일
- 21. KeyedCollection에서 추가 및 검색
- 22. 검색 및 앰퍼샌드
- 23. 검색 및 소유권
- 24. 검색 및 바꾸기
- 25. 검색 및 설정 노드
- 26. 검색 및 순위 결과
- 27. 암호 저장 및 검색
- 28. Lucene 인덱싱 및 검색
- 29. 데이터베이스 저장 및 검색
- 30. bsearch 및 검색 범위?
키는 어느 것입니까? – sbi
여기서 혼란스럽지 않은지 확인하십시오. 순서 지정 명령 인 경우지도에 세 번째 요소가있을 수 있습니다. – Owl