std::map 생성하고
m[5] = 0;
이런식으로 하면 키가 5인 요소에 값 0이 담김
근데 cout << m[4] << endl;
이런식으로 인덱스 조회하면
에러가 안나고 요소가 추가되네?
cout << m.at[4] << endl;
이렇게 하면 out of range 에러나고
이거 왜 다름?
std::map 생성하고
m[5] = 0;
이런식으로 하면 키가 5인 요소에 값 0이 담김
근데 cout << m[4] << endl;
이런식으로 인덱스 조회하면
에러가 안나고 요소가 추가되네?
cout << m.at[4] << endl;
이렇게 하면 out of range 에러나고
이거 왜 다름?
Map::operator[] 는 값을 대입할수 있는 레퍼런스 이터레이터를 반환함. 이터레이터는 oprator= 오버로드 되있어서 대입되면 메모리 할당하고 값을 Map에 넣음 - dc App
이터레이터 맞나. 여튼 그런게 있음 스레기님아 - dc App
Map::at() 은 인자 키값에 매핑된 값 반환하는데 매핑하는 이터레이터가 없으니깐 아웃오브랭지임 ㅅㄱ - dc App
감사합니다... 근데 왜 스레기라고 함? 돈도없어서 혼자 독학하는데 ㅜㅜ 돈없다고 무시함? 님 뭐 만수르라도 됨? ㅜㅜ 더럽다 물질만능주의