У меня есть такой класс
class MyClass
{
int Identifier;
int Context;
int Data;
}
и я планирую хранить его в контейнере STL, например
vector<MyClass> myVector;
но мне нужно будет получить к нему доступ либо по внешнему индексу (используя myVector[index]
); и сочетание Identifier
и Context
, которое в этом случае я бы выполнил поиск с чем-то вроде
vector<MyClass>::iterator myIt;
for( myIt = myVector.begin(); myIt != myVector.end(); myIt++ )
{
if( ( myIt->Idenfifier == target_id ) &&
( myIt->Context == target_context ) )
return *myIt; //or do something else...
}
Есть ли лучший способ хранить или индексировать данные?