У меня есть следующая проблема:
std::map<A*,double> map;
void getColor(A const * obj){
double d = map[obj]; // does not compile wihtout const_cast<A*>(obj)
// do something
}
У меня есть карта std::map (где-то), которая хранит указатели на объекты A.
У меня есть функция getColor, которая не выполняет манипулирует объектами A и поэтому принимает указатель на ввод const A.
Функция getColor не будет компилироваться без использования const_cast.
Конструкция const - это проблема дизайна, но я не знаю, как обойти ее, если я не хочу делать ключи в map const.
Любая помощь была оценена.