我有一个DateTime类,它以日,月,年,小时和分钟为输入。
我正在尝试实现时间表结构,并试图实现一种为插入的数据查找冲突的方法。
这将创建该类的实例:
DateTime DT(18, 03, 2018, 12, 15);
然后我想检查实例是否存在于时间表结构中。
list <DateTime> Date;
Date.push_front(DT);
这将尝试检查时间表中是否存在数据:
list<int>::iterator iter = std::find(Date.begin(), Date.end(), DT);
if (Date.end() == iter)
{
std::cout << "item not found" << std::endl;
}
else
{
std::cout << "Collision at DateTime:" << DT << std::endl;
}
但是,std :: find出现错误,因为:
错误(活动)E0312不存在从“ std :: _ List_iterator,std :: _ List_iter_types * >>>>”到“ std :: _ List_iterator,std :: _ List_iter_types * >>>>”的用户定义的转换< / p>
如何解决此错误,以查找插入数据的冲突?
答案 0 :(得分:1)
使用list<DateTime>::iterator
代替list<int>