std::string
オプションの説明として引数を提供しようとしています。一般に、有効範囲が定義されていない引数。詳しくは、翻訳を提供したいです。
using namespace boost::program_options;
using namespace boost::locale;
options_description desc (translate ("Hello world!"));
desc.add_options ()
("help", translate ("Veni vidi vici"))
;
add_options()
上記の構文を使用できるようにoptions_description_easy_init
、演算子を事前定義したインスタンスを返します。()
現在、そのオペレーターはconst char*
説明としてのみ受け入れており、これは私を悩ませています。したがって、私は次の質問を念頭に置いています。
- この問題にアプローチする方法は何でしょうか?
このクラスの所有権ポリシーは何ですか? これらのポインタは保存されているだけなので、ソースは、説明が生きている限り存続する必要がありますか、それとも安全です(うん!):
("help", translate ("Veni vidi vici").str ().c_str ())
const char_type*
説明パラメータとしてのみ持つ理由は何ですか?