How to use map in c++ STL, c++ 맵 STL 사용방법/초기화/예제, java, example, sample, library, find, insert, first
간단하게 자주 사용하는 것만 확인해보고 예제를 만들었다.
at / find / insert / initialize / erase / begin
I checked simple things what i use sometimes, and made example code for find function.
- I put the find() sample in example code.
- Initialize map
map<int, int> tempMap;
- how to put key & value in the map
tempMap.insert(pair<int, int>(1, 1));
Use insert function using pair object
- how to get value using key
tempMap.at(keyValue)
If it doesn't have that key, it will dead
- how to erase key & value using key
tempMap.erase(2);
Put the key and erase that pair
- how to get first key & value in the map
Get key : tempMap.begin()->first
Get value : tempMap.begin()->second
begin() to get first pair. In pair node, first means key, second means second.
- 맵 안에 찾는 값이 있는지 확인 하는 방법은 예제에 넣어두었다. (find)
- 맵을 초기화 하는 것은
map<int, int> tempMap;
std::map 을 써주고, <key, value> 맵에 들어갈 키와 값 자료형 타입을 써주고 변수명을 써준다.
- 맵 안에 key , value 를 넣는 방법은
tempMap.insert(pair<int, int>(1, 1));
맵에 insert 를 해주는데, pair 덩어리를 만들어서 넣어준다. 마찬가지로 자료형을 써주고 값을 넣으며 초기화하며 넣는다.
- 맵 안에서 key 값으로 value 를 가져오는 방법은
tempMap.at(keyValue) 로 찾을 수 있는데, 만약 해당 key 값이 없다면 뻑난다.
- 맵 안에서 key value 를 지우는 방법은
tempMap.erase(2);
key 값을 넣어서 해당 pair 를 지울 수 있다.
- 맵 안의 가장 첫번째 key 나 value 를 가져오는 방법은
키를 가져올 때 : tempMap.begin()->first
값을 가져올 때 : tempMap.begin()->second
begin() 으로 제일 첫번째 pair 노드를 가져오고, pair 에서 first 는 키를 의미하고 / second 는 값을 의미한다.
e.g.
#include <iostream>
#include <string>
#include <map>
using namespace std;
class Solution {
public:
void example(int searchNumber) {
map<int, int> tempMap;
tempMap.insert(pair<int, int>(1, 1));
tempMap.insert(pair<int, int>(2, 2));
tempMap.insert(pair<int, int>(3, 3));
auto search = tempMap.find(searchNumber);
if (search != tempMap.end()) { // if it has searchNumber
cout << "Key : " << search->first << "\t" << "Value : " << search->second << endl;
}
else // if it doesn't have searchNumber
{
cout << "It doesn't have searchNumber" << endl;
}
}
};
int main(int argc, char *argv[]) {
Solution sln;
int searchNum = 2;
sln.example(searchNum);
}