flat_map::operator[]

flat_map::operator[] (키로 값 접근)

키로 매핑 값에 접근하는 첨자 연산자예요. 키가 없으면 기본값으로 새 요소를 삽입해요. <flat_map> 헤더, C++23부터.

출처: cppreference

본문

operator[]는 키에 대응하는 값에 대한 참조를 반환해요. 키가 없으면 기본 생성된 값으로 새 요소를 삽입한 뒤 그 참조를 반환해요.

T& operator[]( const Key& key );     // (1)
T& operator[]( Key&& key );          // (2)
    1. key가 있으면 그 값 참조, 없으면 삽입 후 참조.
    1. key를 이동해 삽입.
std::flat_map<std::string, int> m;
m["apple"] = 3;         // 없으므로 삽입 후 대입
int v = m["banana"];    // 없으므로 0으로 삽입된 뒤 0 반환

주의: 키가 없을 때 값을 읽는 용도로 쓰면 의도치 않게 요소가 생겨요. 읽기 전용·존재 확인은 at/find가 적합해요. 매핑 타입 T는 기본 생성 가능해야 해요.

더 알아보기 (Learn more)

cppreference