C++プログラムでGNUgetoptを使用するのは悪い形式ですか?C ++固有の代替手段はありますか、それともgetoptを使用する必要がありますか?
7 に答える
getoptを使用しても問題はありません。Boost.Program_options、POCO、ACEのクラスなど、オブジェクト指向の選択肢が多数あります。
C ++では、boost::program_optionsを使用することもできます。
getoptの使用に問題があるかどうかはわかりません。ただし、Boost.Program_optionsを確認することをお勧めします。
まったくそうでgetopt
はありませんが、C++ではまったく問題ありません。Boost :: program_optionsには、Boostライブラリがインストールされている必要がありますが、多くの場合はインストールされていない可能性があります。
CLPPライブラリを試してください。これは、コマンドラインパラメータを解析するためのシンプルで柔軟なライブラリです。ヘッダーのみおよびクロスプラットフォーム。ISOC++およびBoostC++ライブラリのみを使用します。私見では、Boost.Program_optionsよりも簡単です。
ライブラリ:http ://sourceforge.net/projects/clp-parser
2010年10月26日-新しいリリース2.0rc。多くのバグが修正され、ソースコード、ドキュメント、例、コメントの完全なリファクタリングが修正されました。
これを見てください:http://michael.dipperstein.com/optlist/index.html
TCLAP(http://tclap.sourceforge.net/)TemplatizedC++コマンドラインパーサーライブラリが好きです。