2017-12-02 260 views
0

boost.program_options庫存儲並允許編程訪問運行該程序時在命令行上提供的參數。CLI解析完成後,可以添加boost program_options和參數嗎?

一旦程序運行並且已經解析了所有CLI參數,調用一些庫函數(對我來說是未知的,或者容易編碼的)來實例化選項/參數,還可以更改選項上的值參數嗎?換句話說,是否可以簡單地啓動(即添加)已經在源代碼中配置的選項,但在調用時沒有提及?

爲什麼?假設程序有一個GUI,並且用戶想要更新命令行中的一些設置。

回答

0

你將不得不重新解析。

program_options_descriptions的動態添加更多的是因爲您有一個插件添加其他選項而不是更改已經解析的內容。或者用於獲取多組選項(基本,高級,環境變量和配置文件來源)並填充variables_map。

options_description有一個add()重載,它接受另一個options_description實例並將該實例中的選項添加到此實例中。但是,這樣的添加不會導致variable_map中已解析的項目發生更改。

相關問題