mapa con claves constantes pero valores no constantes?

Tengo una situación en la que me gustaría tener un mapa que no permita agregar / quitar claves después de la inicialización, pero los valores pueden cambiar (por lo tanto, no puedo simplemente hacer el mapaconst) Es decir

/*semi-const*/ map<int,int> myMap = initMap();

myMap[1] = 2;                  // NOT OK, because potentially adds a new key
myMap.at(1) = 2;               // OK, because works only if key is present
for (auto & element : myMap) {
    element.second = 0;        // OK, values may change
}

Podría escribir mi propia envoltura parastd::map, pero tengo la sensación de que es algo no muy infrecuente, por lo que me pregunto si ya existe una solución.

¿Existe algún modismo estándar para un mapa que no permite agregar / quitar claves, mientras que los valores pueden cambiar?

PD: Sé que el título solo es un poco vago, porque las teclas ya están const en un mapa, pero espero que esté claro lo que quiero decir ...

Respuestas a la pregunta(5)

Su respuesta a la pregunta