2007-10-06

Boost.Program_options が酷い件

program_optionsを使ってみることにした。 しかし、Unicodeへの対応がなってない。
namespace po = boost::program_options ; po::options_description desc("options") ; desc.add_options() // std::stringへlexical_castしようとしてコンパイルエラー ("output-file,o", po::wvalue< std::wstring >()->default_value(L"out.txt") , "output file name")
 これは酷い。wchar_tへの相互変換のラッパをかませているだけだ。しかも一部動かない。こんなひどい対応で、何が  >Throughout this document "Unicode support" is a synonym for "wchar_t" support  何だか。  ドキュメントは次のように変更すべきである。  Throughout this document "Unicode support" is a synonym for "char to wchar_t conversion" support  >Neither of these issues appear to be critical in practice  だって? 皆ASCII外の範囲の文字は使ってないのですか。 たいしたUnicodeですな。  ああ、utf16leを使うのは難しい。 追記: Boostスレに助言を求めたら、このブログを引用された。program_optionsって誰が使っているんだろう。

No comments:

Post a Comment

You can use some HTML elements, such as <b>, <i>, <a>, also, some characters need to be entity referenced such as <, > and & Your comment may need to be confirmed by blog author. Your comment will be published under GFDL 1.3 or later license with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.