Bonjour à tous. À l'exercice 7-1 du livre Accelerated C++, on demande de faire évoluer un code servant à compter le nombre d'occurrences de mots, pour que le trie se fasse non plus par ordre alphabétique des mots trouvés (acrobate: 2 fois, jongleur: 3 fois, ...) mais par ordre des occurrences (Mots apparaissant n fois: mes_mots1, Mots apparaissant (n-1) fois: mes_mots2...).
Quelques lignes au-dessus de la question, l'expression suivante apparait:
Cela ne peut être un hasard. cmp est le prédicat servant à déterminer l'ordre des éléments. Jusque là, c'est tout ce qui est dit à propos des prédicats des map.
Code : Sélectionner tout - Visualiser dans une fenêtre à part map<K, V> m(cmp);
Voici le code initial:
Voici mon code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
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
30
La compilation échoue (ligne Map counters(cmp)). Au début j'avais écrit cmp() de la façon suivante:
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
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
... sans davantage de succès.
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3

 

 
		
		 
         
 

 
			
			

 
   


 Prédicat d'un map
 Prédicat d'un map
				 Répondre avec citation
  Répondre avec citation


 
			




 
  
  
 
 
			 
  Envoyé par goran kajfes
 Envoyé par goran kajfes
					
 On ne me dit pas de ne pas changer la déclaration du map, mais de modifier la sortie. En modifiant le map (sa déclaration), je modifie ainsi sa sortie. Mais je ne suis pas dans la tête de Koenig et Moo.
 On ne me dit pas de ne pas changer la déclaration du map, mais de modifier la sortie. En modifiant le map (sa déclaration), je modifie ainsi sa sortie. Mais je ne suis pas dans la tête de Koenig et Moo.
Partager