Thanks for your answer Igor. Unfortunately that is out of my control. This is the type of structure we used across multiple applications. I was checking key extractors and I think that might work but haven't tried out yet. Thanks Priyank On Apr 6, 2011, at 3:32 PM, "Igor R" <boost.lists@gmail.com> wrote:
2011/4/6 <ppatel@archelongroup.com>:
Hello,
I have a question regarding creating composite key/specifying length for arrays while using multi_index container based on following structure.
struct TestStruct {
char firstKey[50];
char secondKeyPart[3];
uint32_t thirdKeyPart;
……Some other information….
};
Do I really read to specify this lengths for character arrays? If yes, how do I do that while specifying key parts as below?
typedef multi_index_container <
TestStruct,
indexed_by<
//non-unique as some subscribers might have more than one number
hashed_unique<
composite_key<
TestStruct,
member<TestStruct, char*, &TestStruct::firstKeyPart>,
member<TestStruct, char*, &TestStruct::secondKeyPart>,
member<TestStruct, uint32_t, &TestStruct::thirdKeyPart>,
>
>
TS;
The above keys will hash the pointer values, which is probably not what you want. If you change plain C arrays to std::string, it will work as you expect. _______________________________________________ Boost-users mailing list Boost-users@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/boost-users