cs_ashram
Messages postés3Date d'inscriptionvendredi 25 janvier 2002StatutMembreDernière intervention26 août 2004
-
26 août 2004 à 10:25
MetalDwarf
Messages postés241Date d'inscriptionmardi 29 octobre 2002StatutMembreDernière intervention23 janvier 2006
-
28 août 2004 à 12:11
bonjour
j'ai un prog qui utilise la STL
je le compile ss windows ou ss cygwin et ça marche
mais ss unix avec un compilo g++ un peu ancien il ne reconnait
par la méthode at( ) de la classe vector
voici l'erreur
Trie.cpp: In method `bool Trie::includedIn (set<Trie, less<Trie>,
allocator<Trie> > *, vector<short unsigned int, allocator<short
unsigned int> > *, short unsigned int)':
Trie.cpp:187: no matching function for call to `vector<short unsigned int, allocator<short unsigned int> >::at (short unsigned int &)'
on m a dit que cela venait probablement du fait que j utilise une ancienne version de g++ la 2.96
et que [] ne marche pas pour ça
il me lance une erreur
In member function `bool Trie::includedIn(std::set<Trie, std::less<Trie>, std::allocator<Trie> >*, std::vector<short unsigned int, match for 'operator==' in 'tmpId == *(itemset + (+(spos * 12)))'
MetalDwarf
Messages postés241Date d'inscriptionmardi 29 octobre 2002StatutMembreDernière intervention23 janvier 2006 28 août 2004 à 12:11
je viens rapidement de lire ton post et j ai bien vite vu le probleme : g++ 2.96!!!
g++ 2.96 n a en realite jamais existe, et ce sont les developpeur de g++ qui le disent. C est en fait une version de developpement que red hat a cru malin d utiliser comme compilateur et qui du coup se retrouve un peu partout!! Mais c est une versioin de developpement donc les bugs, ca peut arriver.
Essaye de prendre une version plus recente de gcc/g++, comme la 3.4.0 qui marche sans probleme et qui compile 15% plus vite que la 3.3 pour le C++.
Tu devrais la trouver en package pour ta distribution, ou sur http://gcc.gnu.org/. Ce n est pas dur a compiler, si tu sais faire ./configure && make && make install...