0
ADDRES我有一個結構:Boost.MultiIndex的和的值作爲關鍵
struct user_context {
struct user_id;
struct user_name;
struct user_address;
boost::int64_t user_id() const;
const std::string& user_name() const;
};
我想使用boost.multiindex用三個指標:1)USER_ID,2)USER_NAME,3)user_context對象的地址
我不知道,如何編寫user_context類型的對象的地址的關鍵規範。
typedef std::shared_ptr<user_context> user_context_ptr;
typedef boost::multi_index::multi_index_container<
user_context_ptr
,boost::multi_index::indexed_by<
boost::multi_index::hashed_unique<
boost::multi_index::tag<user_context::user_id>
,boost::multi_index::const_mem_fun<
user_context
,boost::int64_t
,&user_context::user_id
>
>,
boost::multi_index::hashed_unique<
boost::multi_index::tag<user_context::user_name>
,boost::multi_index::const_mem_fun<
user_context
,const std::string&
,&user_context::user_name
>
>,
boost::multi_index::hashed_unique<
boost::multi_index::tag<user_context::user_address>
,boost::multi_index:: ??? < // <<<
user_context
,user_context* (???) // <<<
,??? // <<<
>
>
>
> users_container;
謝謝。
我需要第三個指數將原始指針,而不是智能指針。謝謝! – niXman
然後使用const_mem_fun。 –