3
我想排序我的對象boost::multi_map
引用一些索引。但我存儲的不是純粹的對象,而是包含到boost::shared_ptr
中。這裏是代碼:Multimap和shared_ptr
typedef boost::multi_index_container<boost::shared_ptr<Object>,
boost::multi_index::indexed_by<
boost::multi_index:: ordered_non_unique<
boost::multi_index::mem_fun<boost::shared_ptr<Object>, int, &boost::shared_ptr<Object>::getIndex>
>
>
> ObjectWrapperSet;
但它失敗的點:&boost::shared_ptr<Object>::getIndex
。這在邏輯上,該類型沒有getIndex
函數。但是如何用這種方式來引用那個函數呢?
我用簡單的Object::getIndex
試了一下:
could not convert template argument ‘&Object::getIndex’ to ‘int (boost::shared_ptr<Object>::*)()’
請看我的更新。 – Ockonal 2011-04-10 08:30:40
@Ockonal:請看我的更新。 – ybungalobill 2011-04-10 08:31:48
謝謝,我從文檔中錯過了。 – Ockonal 2011-04-10 08:33:31