Из фона Си я снова попадаю в привычки Си, где обычно есть лучший способ. В этом случае я не могу придумать способ сделать это без указателей.
Я бы хотел
struct foo {
int i;
int j;
};
mymap['a'] = foo
mymap['b'] = bar
Пока только один ключ ссылается на значение, mymap.find будет возвращать ссылку, чтобы я мог изменить значение, но если я сделаю это:
mymap['c'] = mymap.find('a') // problematic because foo is copied right?
Цель состоит в том, чтобы найти «a» или «c» и изменить foo, а затем следующая находка «a» или «c» покажет обновленный результат.