如何在C ++中插入要设置的结构对象

时间:2016-08-18 21:52:55

标签: c++ dictionary set

我正在尝试添加一些项目来设置和映射,但是插入到地图并设置给出错误

NSInvocation

错误:

  

错误1错误C2664:   “的std :: _ Tree_const_iterator>>   的std ::集,性病::分配器< _Kty>> ::插入件(STD :: _ Tree_const_iterator>>,const的   person_struct&)':无法从'person_struct *'转换参数1   到'person_struct&&'

提前感谢您的帮助

1 个答案:

答案 0 :(得分:0)

std::set是一组有序的唯一元素,因此您必须为结构定义operator <

另一方面,你可以使用std::unordered_set - 那么你必须为你的结构专门化std::hash仿函数(或者提供一些其他的unordered_set模板参数。)< / p>