Hello,
Would anyone know why this compiles with the following error message:
multi_index\ordered_index.hpp(941): error C2064: term does not evaluate to a function taking 2 arguments
Code:
typedef multi_index_container<
shared_ptr<CustomItem>,
indexed_by<
ordered_non_unique <
composite_key<
CustomItem,
member<CustomItem, int, &CustomItem::mOne >,
member<CustomItem, int, &CustomItem::mTwo>,
member<CustomItem, int, &CustomItem::mThree>
>,
sequenced<>
>
>
> CUSTOM_ITEMS;
The insert fails - If commented out, it works fine:
Code:
CUSTOM_ITEMS mCustomItems;
shared_ptr<CustomItem> customItem( new CustomItem() );
mCustomItems.insert(customerItem);
If I take the additional sequence index off the declaration I can insert my items with no compilation issues.
I just wanted two indexs, the first one so that they are ordered by composite key, which works fine. The second being sequenced so that the insertion order of the container is preserved.
Even if I explicitly reference the first index, mCustomItems.get<0>().insert - that still fails.
Does anyone know why simply adding the additional sequenced index would cause this compilation issue?
Using:
VS 2010 SP1
boost_1_48_0
WIN 7
Thanks.