我一直在使用boost
一段時間,但我仍然是一個新手。 我想我應該是boost::any
,因爲我不再需要使用模板來處理使用或返回的類型化對象。 但是我發現對我來說仍然不方便的是一種更平滑的功能或方法,如果有任何簡單的來回傳輸其held
數據,肯定不會在以後使用cast_any
。提升庫和持有值
公約
(case 1)
boost::any a="123456";
std::string s=boost::cast_any<std::string>(a);
(case 2)
boost:any a=123456;
int i=boost::cast_any<int>a;
定製boost_any:
(case 1)
boost:any a="123456";
std::string s=a;
(case 2)
boost:any a=123456;
int i=a;
我喜歡這個功能,因爲我的調試程序時我找對象的準確held="123456"
在這兩種情況下是相同的。 I think
該lib的內部實現可能已經完成了(將其保存的內容轉換爲string
)。 這個例子只顯示了POD類型,我想知道是否有人對這個定製做了什麼或者如何取得相同的結果,以消除cast_any
。