Bonjour à tous,

je veux créer un map de dimension 2,
le code correspondant est le suivante:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
 
#include <iostream>
#include <map>
#include <string>
 
template <class T>
class C
{
public:
void listAll() {
for(typename std::map<std::pair<std::string, std::string>, T>::iterator i= box.begin();
i != box.end(); i++){
std::cout << i->first << " ---> "
<< i->second << std::endl;
}
}
std::map<std::pair<std::string, std::string>, T> box;
};
 
int main(int argc, char *argv[])
{
 
C<int> c0;
c0.box["abc","s"] = 123;
c0.box["def","q"] = 456;
c0.listAll();
 
return 0;
}
Lors de la compilation avec gcc, il m'affiche des erreurs.
y'a t'il qq1 qui comprend où réside l'erreur.

Merci Bien pour vos reponses.


Même aussi qd j'écrit:
"
c0.box["abc"]["s"] = 123;
c0.box["def"]["q"] = 456;
"
l'erreur reste le même.