問題のstdmapでcharをキーとして使用する場合は、カスタム比較関数/ファンクターを使用することをお勧めします。
struct cmp_str
{
bool operator()(char const *a, char const *b)
{
return std::strcmp(a, b) < 0;
}
};
map<char *, int, cmp_str> BlahBlah;
これにより、マップはキーAがキーBより小さいかどうかを検出できます。ただし、たとえば、 map <> :: find()は、要素が見つからない場合はendを返し、要素が見つかった場合はそれを繰り返します。したがって、マップは、未満だけでなく、同等性についても認識しています。どのように?