я могу определения структуры, как это:Как определить самореферентную карту в C++?
struct A{
map<string,A> m;
};
и я могу использовать его как это:
A a;
a.m["abc"].m["def"];
, но я хочу, чтобы использовать его как это:
a["abc"]["def"];
это требует a
будет map<string,typeof(a)>
, но ic не определите что-то такое, как map<string,map<string,...>>
Это не требует бесконечного пространства, но я не знаю, как определить такую вещь на C++. Как я могу это сделать?
Концептуально, как эта цепочка заканчивается? –
Почему бы не добавить оператор [] в структуру A? – user4581301
@ A.S.H: ему не нужно заканчивать ... можно было просто использовать ключи для представления n-образных деревьев строк. – 6502