【问题标题】:C++ and command line optionsC++ 和命令行选项
【发布时间】:2010-10-24 03:55:43
【问题描述】:

在 C++ 程序中使用 GNU getopt 是不是很糟糕?是否有特定于 C++ 的替代方案,或者我应该仍然只使用 getopt?

【问题讨论】:

标签: c++ getopt


【解决方案1】:

使用 getopt 没有任何问题。有许多面向对象的替代方案,包括 Boost.Program_optionsPOCO 和 ACE 中的类。

【讨论】:

    【解决方案2】:

    在 C++ 中,您也可以使用 boost::program_options

    【讨论】:

      【解决方案3】:

      我不知道使用 getopt 有什么问题。不过你可能想看看Boost.Program_options

      【讨论】:

        【解决方案4】:

        一点也不,getopt 在 C++ 中非常好。 Boost::program_options 要求安装 Boost 库,很多人可能没有。

        【讨论】:

        • Boost 可以构建为静态库。否则,您实际上必须将动态库与您的项目无论如何一起提供。
        • 我的意思是,许多 Linux 发行版的“开发”包可能默认不包含 Boost。
        【解决方案5】:

        【讨论】:

          【解决方案6】:

          试试 CLPP 库。它是用于命令行参数解析的简单灵活的库。仅标题和跨平台。仅使用 ISO C++ 和 Boost C++ 库。恕我直言,它比 Boost.Program_options 更容易。

          图书馆:http://sourceforge.net/projects/clp-parser

          2010 年 10 月 26 日 - 新版本 2.0rc。修复了许多错误,对源代码、文档、示例和 cmets 进行了全面重构。

          【讨论】:

            【解决方案7】:

            我喜欢 TCLAP (http://tclap.sourceforge.net/) 模板化 C++ 命令行解析器库。

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 2017-01-20
              • 2012-12-28
              • 2020-07-20
              • 2011-10-29
              • 1970-01-01
              • 2011-09-13
              相关资源
              最近更新 更多