我在做一些使用C++的算法工作。我的算法有一些選項,我需要儘可能少地加入到我的程序中。我目前使用this的代碼。程序選項
一切正常:我添加了一些代碼,我的計劃,所以我可以調用帶參數的二進制像-oopt1=val1,opt2=val2
和選項會自動設置。
的問題是,我也寫在同一時間的GUI。現在,每種選項都必須能夠使用GUI設置/請求。但是,我可能需要一個整數值的spinbox和一個布爾選項的複選框。我正在使用Qt作爲工具包,所以我可以寫一個成員 函數返回QWidget*
這是適當的基類。
不過,我不希望在我宣佈我的選擇,因爲我想在GUI從程序的其餘部分分開的頭任何特定的GUI代碼。我可以創建一個合適的QWidget*
的子類,但是如果我得到一個OptBase*
的列表,我不知道應該創建什麼樣的小部件。
是否有某種方式,我可以保持距離,同時仍然能夠創造適當的小部件程序的其餘部分分開的GUI?
什麼[的QVariant](http://qt-project.org/doc/qt-5.0/qtcore/qvariant.html)或[Boost.Variant](http://www.boost.org/doc/ libs/1_53_0/doc/html/variant.html)? – Trompa