Oouii. Et surtout elle permet d'associer des variables typées du code à des options. Un peu comme en perl. Et ça, c'est énorme.Envoyé par koala01
Maintenant, pour son exercice de C, je doute que cela lui soit très utile.
Oouii. Et surtout elle permet d'associer des variables typées du code à des options. Un peu comme en perl. Et ça, c'est énorme.Envoyé par koala01
Maintenant, pour son exercice de C, je doute que cela lui soit très utile.
s'il vous plait pourrait-on avoir un tutorial ?Envoyé par Luc Hermitte
Pour cela, l'outil magique s'appelle Google! Voici un lien excellent:
http://www.cs.brown.edu/~jwicks/boos...m_options.html
Thierry
Merci vous tous!
Je viens de jeter un coup d'oeil a BoostPrograms options...cest bien cela que je dois faire!
genre nom.exe- c,
nom.exe -a
nom.exe -blabla...
Surtout que mon code ne fonctionne pas en fait!
il inverse!!??
if(argc==2 && strcmp(argv[1], "-c") )
et if(argc==2 && strcmp(argv[1], "-a") )
me fait le code de "a" quand je lance le programme avec -c et inversement...
Mais Boostprogramm options ma lair complique....
La fonction strcmp renvoie 0 quand les deux chaines sont égales.
Donc il faut faire
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 if(argc==2 && !strcmp(argv[1], "-c") ) et if(argc==2 && !strcmp(argv[1], "-a") )
Merci!
Je close le sujet...
cela fonctionne:
if(argc==2 && strcmp(argv[1], "-c")==0 )
C'est a premiere vue identique au code de frenchi puisque lui compare avec l'inverse (!)
Boost_programmes jai essayer il m'a dit pleins d'erreurs... je savais pas comment le declarer nom plus...
jai essayer "using namespace po = boost::program_options;"
mais cela n'avais pas lair detre cela...
Comme je disais jai malheureusement pas le temps de m'ebattre a regarder tout! Deadline cest demain et jai 11 parametres de lignes de commandes a faire!!!
Avec des cas genre inverser les tableaux et tout...
Merci beaucoup pour vos aides en tout cas!
tres utiles!
Un tutoriel, c'est un peu beaucoup demandé.Envoyé par epsilon68
Le lien qu'a donné mujigka semble être un mirroir vers la doc officielle, autant pointer vers elle.
Autrement, tout ce que je peux "donner" pour l'instant, c'est un exemple d'utilisation sur un projet qui traine depuis trop longtemps.
On y voit:
- des variables typées directement associées des options, sans que l'on ait besoin de rien faire de plus notre côté -- i.e. pas de find(), switch, ... Sans être aussi clean que l'équivalent perl, je trouve que c'est déjà pas mal du tout
- on peut toujours demander à voir la valeur d'une option non associée à une variable C++
- un truc qui permet de fusionner des listes d'options -> "-k 1,2 -k 42" ; En utilisant juste un vecteur au lieu de mon CommaSepList, "1" et "2" n'auraient pas été compris comme deux arguments différents, mais la fusion aurait tout de même été au rendez-vous.
- des options avec ou sans arguments ; des options courtes et/ou longues
- que la doc est embarquée dans la définition des options -> pas forcément très clair à relire du coup
- et diverses autres choses.
Quelques petits problèmes:
- la doc générée rajoute un "arg" en plus, ce qui me gêne un peu par rapport à ce que j'aurais voulu obtenir (cf cyg-wrapper.sh à la racine du répertoire cygwin de mon site)
- un bug semble-t-il avec la gestion des paramètres qu'il faudrait ignorer au lieu de lever une exception
- un empreinte pas si négligeable (comparé aux autres outils cygwin), que je soupçonne venir de l'utilisation des IOStreams standard.
boost.program_options est puissant et pratique (à quelques détails près), mais je ne pense pas que cela soit le genre de choses que l'on puisse employer dans un devoir à rendre.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager