Я реализую шестиуровневую задачу Кевина Бэкона и пишу класс для узла актора. Я могу использовать набор, но не контейнер hash_set для хранения пользовательского класса. Зачем? сообщение об ошибке показывает: error C2440: 'type cast': невозможно преобразовать из 'const ActorGraphNode' в 'size_t' 1> Нет доступного пользовательского оператора преобразования, который может выполнить это преобразование, или оператор не может быть вызван....
#include <hash_set>
#include <set>
class ActorGraphNode{
public:
string ActorName;
//hash_set<ActorGraphNode> linkedActors;
set<ActorGraphNode> linkedActors;
ActorGraphNode(string name):ActorName(name){}
void linkCostar(ActorGraphNode actor){
linkedActors.insert(actor);
actor.linkedActors.insert(*this);
}
bool operator<( const ActorGraphNode& a ) const
{ return ActorName < a.ActorName ? true : false;}
};