Я хочу использовать контейнер STL Map для поиска указателя, используя двоичные данные в качестве ключа, поэтому я написал этот пользовательский объект функции:
struct my_cmp
{
bool operator() (unsigned char * const &a, unsigned char * const &b)
{
return (memcmp(a,b,4)<0) ? true : false;
}
};
И используя его вот так:
map<unsigned char *, void *, my_cmp> mymap;
Это компилируется и, похоже, работает, но я не уверен, что такое "unsigned char * const &" тип и почему он не работал с просто "unsigned char *"?