Flerdimensionell Karta s används när vi vill mappa ett värde till en kombination av nycklar. Nyckeln kan vara av vilken datatyp som helst, inklusive de som är användardefinierade. Flerdimensionella kartor är kapslade kartor; det vill säga de mappar en nyckel till en annan karta, som i sig lagrar kombinationer av nyckelvärden med motsvarande mappade värden.
Syntax:
// Creating a two-dimensional map: map object; // Creating an N-dimensional map: map>objekt;>
Exempel 1:
objektiv java
// C++14 code to implement two-dimensional map> > #include> using> namespace> std;> > int> main()> {> > >// Two-dimensional key> >map<>int>, map<>int>,>int>>> m;> > >// For accessing outer map> >map<>int>, map<>int>,>int>>>::iterator itr;> > >// For accessing inner map> >map<>int>,>int>>::iterator ptr;> > >for> (>int> i = 0; i <2; i++) {> >for> (>int> j = 0; j <2; j++) {> >m[i][j] = i + j;> >}> >}> > >for> (>int> i = 0; i <2; i++) {> >for> (>int> j = 0; j <2; j++) {> > >// Accessing through array subscript> >cout <<>'First key is '> << i> ><<>' And second key is '> << j> ><<>' And value is '> << m[i][j] << endl;> >}> >}> > >cout <<>'
Now accessing map though iterator
'>;> > >for> (itr = m.begin(); itr != m.end(); itr++) {> > >for> (ptr = itr->second.begin(); ptr != itr->second.end(); ptr++) {> >cout <<>'First key is '> << ' And second key is ' << ' And value is ' } } }> |
>
>Produktion:
First key is 0 And second key is 0 And value is 0 First key is 0 And second key is 1 And value is 1 First key is 1 And second key is 0 And value is 1 First key is 1 And second key is 1 And value is 2 Now accessing map though iterator First key is 0 And second key is 0 And value is 0 First key is 0 And second key is 1 And value is 1 First key is 1 And second key is 0 And value is 1 First key is 1 And second key is 1 And value is 2>
Exempel 2:
kat timpf vikt
fet text i css
// C++14 code to implement two-dimensional map> // and inserting value through insert()> > #include> using> namespace> std;> > int> main()> {> > >// First key type is a string> >mapint, int>> m; mapint, int>>::iterator itr; Karta |
>
>Produktion:
First key is Geek And second key is 1 And value is 10 First key is Geek And second key is 2 And value is 20 First key is Noob And second key is 0 And value is 5>