utilisation lib <Set>

utilisation lib <Set> - C++ - Programmation

Marsh Posté le 15-10-2006 à 15:59:03    

Bijoir,
 
j'essaye de compiler une lib trouvé sur sourceforge, malheureusement plusieurs soucis... le premier est un peu HS dans ce forum car il concerne une lib (uudeview) qu'il ne trouve pas alors qu'elle est installée... mais bon je vais regarder ca de plus pres.
 
l'autre, qui est le but de ce topic est un probleme dans le code ...
 

Code :
  1. news_mimetypes.h:38: error: ISO C++ forbids declaration of 'set' with no type
  2. news_mimetypes.h:38: error: expected %<;%> before '<' token
  3. news_mimetypes.h:46: error: 'string' does not name a type


 
et les lignes en questions  
 
38: set<string> getExtensions();
46: string popExtension();
 
les includes sont les suivants
 

Code :
  1. #include <string>
  2. #include <set>
  3. #include <iterator>


 
 
Si vous avez une idée, je suis preneur :) ou si vous avez besoin de plus de code, n'hesitez pas!
 
PS: la lib sur SF http://sourceforge.net/projects/nntpobjects

Reply

Marsh Posté le 15-10-2006 à 15:59:03   

Reply

Marsh Posté le 15-10-2006 à 16:03:31    

essaie avec des std::

Reply

Marsh Posté le 15-10-2006 à 16:12:25    

En effet j'ai remplacé tous les "set" par "std::set" et idem pour string (par std::string)
 
Le pourquoi du comment est-il simple a comprendre? parcque je vois pas trop la :p
 
m'enfin merci beaucoup :)
 
me reste a resoudre le probleme avec la lib uudeview et ca devrait rouler.

Reply

Marsh Posté le 15-10-2006 à 18:19:54    

FLK a écrit :

Le pourquoi du comment est-il simple a comprendre? parcque je vois pas trop la :p


C'est parce que set et string sont définis dans le namespace "std". Donc soit tu fais "using namespace std;", qui dit au compilo que tout ce qui suit est implicitement dans le namespace std, soit tu met "std::" devant chaque truc qui fait partie du namespace std.

Reply

Marsh Posté le 15-10-2006 à 18:48:25    

soit t'apprends ce qu'est un namespace.

Reply

Marsh Posté le 15-10-2006 à 19:38:56    

humpfr le fameux using namespace std, je l'avais oublié celui la :)
merci!
 
PS@Taz "..."

Reply

Marsh Posté le 15-10-2006 à 19:44:07    

tu vois bien que tu dis fameux comme si c'était une astuce ...

Reply

Marsh Posté le 15-10-2006 à 19:47:40    

Je savais en disant ca que j'aurais droit a cette réponse, le fait est que c'est le cas.
 
m'enfin je vais aller rebouquiner histoire de palier a ces manquements.
 
PS: je n'ai pas trop aimé la forme de ta phrase, même si sur le fond, tu as tout a fait raison.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed