Re: A problem with Nested Maps
"utab" <umut.tabak@gmail.com> schrieb im Newsbeitrag =
news:1148123844.229011.172440@j73g2000cwa.googlegroups.com...
Dear all,
I am trying to create a look-up table for a text search and =
replacement
class which will be used with a commercial software(MCS NASTRAN, I
guess you may have heard that before ).
I want to create a table like
vector<string> ===mapping=== (vector<string>, =
vector<int>)
more clearly, as an example:
GRID GRID 1
ID 2
CP 3
X1 4
X2 5
X3 6
CD 7
PS 8
SEID 9
Here there will be another entry like this
Field1 string1 int1
. .
. .
string9 int2
Looks like you first need a map<string, int> to store pairs like (ID, =
2), (CP, 3) ... That should be simple:
typedef std::map<std::string, int> MapStringToInt;
Then to map GRID to the first group of pairs, Field1 to the next group =
etc. you should use a map from string to MapStringToInt:
typedef std::map<std::string, MapStringToInt> MapStringToMap;
Now you can create a map to maps and populate it:
MapStringToMap metaMap;
metaMap["GRID"].insert(MapStringToInt::value_type("GRID", 1));
metaMap["GRID"].insert(MapStringToInt::value_type("ID", 2));
...
metaMap["Fields1"].insert(MapStringToInt::value_type("string1, =
int1));
metaMap["Fields1"].insert(MapStringToInt::value_type("string2, =
int2));
...
HTH
Heinz