Здравствуйте, Аноним
Попробовать сделать map<int*, CMyClass>? К сожалению проверить негде.
Одно НО: при таком добавлении, как у тебя приведено, после выхода c[] за пределы видимости в MyMap будет содержаться лабуда (ты реально в него добавляешь всего лишь
указатель на int). Выход — использовать std::vector:
std::map<std::vector<int> CMyClass> MyMap;
void foo(){
std::vector<int> key;
MyMap[key] = value;
}
ЗЫ. Возможно компилер не скушает std::map<std::vector<int>, тогда std::vector<int> надо объявить тайпдефом
Вы писали:
А>есть std::map<int[3], CMyClass>
А>как можно добавить определенную пару key-value? "int c[3]; MyMap[c] = MyValue;" естественно не работает