我想要一個具有齊次鍵類型但異構數據類型的映射。你如何製作異構boost :: map?
我希望能夠像做(僞代碼):
boost::map<std::string, magic_goes_here> m;
m.add<int>("a", 2);
m.add<std::string>("b", "black sheep");
int i = m.get<int>("a");
int j = m.get<int>("b"); // error!
我能有一個指向基類的數據類型,但寧可不要。
我從來沒有使用過提升,但看過融合庫,但無法弄清楚我需要做什麼。
感謝您的幫助。
`boost :: variant` – 2014-02-10 22:41:55
如果你知道所有可能的類型,你可能想要在地圖中填充,然後`boost :: variant`將很好。如果你真的想要任何類型,那麼`boost :: any`就是要走的路。 – Kurt 2014-03-07 05:21:58