|
Boost Users : |
Subject: Re: [Boost-users] How to use multi index container?
From: Joaquin M Lopez Munoz (joaquin_at_[hidden])
Date: 2013-10-18 08:09:41
yuan <yuanzhan <at> qq.com> writes:
>
> Hi,
> I try to use multi index container.I have one problem.
> Please help me.Thanks
> struct TOrder
> {
> char szDate[9]; //date type
> Â int nID; // order id
> int nProductID; //product id
> double fPrice;//
> int nVol;//
> //other member
> â¦
> }
>
> The unique key of TOrder struct is szDdate and nID.
> How I can typedef the composite_key and the
> multi_index_container?
Assuming that comparison of szDate's is lexicographical, you can
write something like this:
struct DateCompare
{
bool operator()(const char* x,const char* y)const
{
return std::strcmp(x,y)<0;
}
};
typedef multi_index_container<
TOrder,
indexed_by<
ordered_unique<
composite_key<
TOrder,
member<TOrder,char[9],&TOrder::szDate>,
member<TOrder,int,&TOrder::nID>
>,
composite_key_compare<
DateCompare,
std::less<int>
>
>
>
> TOrderContainer;
All of this should be explained in the tutorial. Which particular
difficulties got you stuck? Thank you,
JoaquÃn M López Muñoz
Telefónica Digital
Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net