• [^] # Re: gnu

    Posté par . En réponse au message Paramètres d'un programme. Évalué à 4.

    C'est défini dans les codings standards GNU (http://www.gnu.org/prep/standards/html_node/Command_002dLine-Interfaces.html#Command_002dLine-Interfaces)

    Effectivement, même si la norme Posix définit un modèle de gestion de la ligne de commande (man 3p getopt), c'est très limité: pas d'options longues qui sont très pratiques pour l'auto-documentation mais qui sont une extension GNU et plus ou moins rentrée dans les moeurs (info getopt_long -la page info propose également un exemple d'utilisation-).

    En C++, Boost.Program_options permet de gérer de manière cohérente et très élégante la ligne de commande (fonction de callbacks, génération automatique de l'aide etc ...) ainsi que les variables d'environnements ou un fichier de configuration. Sauf si on ne peut pas faire autrement, éviter de parser à la main argv ce qui est bien cracra et pas super maintenable à long terme.