无法将对象上的指针添加到集合
Can`t add pointer on object to the set
请帮帮我。
"对象.cpp":
bool OBJECT::operator== (const OBJECT &object) const
{
return *this == object;
}
bool OBJECT::operator< (const OBJECT &object) const
{
return this->m_numberOfObject < object.m_numberOfObject;
}
"other_object.h"
class other_object{
...
set<OBJECT*>* m_imitatedObjects
... }
"other_object.cpp"
m_imitatedObjects.insert(pointer on some instance of class OBJECT)
-
在运行时引发错误,因为我认为由于 cmp 函数定义不正确。
怎么办,如何修复此错误?
bool OBJECT::operator== (const OBJECT &object) const
{
return *this == object;
}
此函数调用自身,导致堆栈溢出。您应该将此函数替换为要用于判断两个对象是否等效的任何逻辑。
此外,除非每个OBJECT
都具有唯一的m_numberOfObject
值,否则您的operator<
不会创建严格的排序。(因为具有相同m_numberOfObject
值但在其他方面不同的两个对象都不会小于另一个对象。这可能会导致您的set
的工作方式与您预期不同。
相关文章:
- 是否允许向空指针添加零?
- 将指向结构数组的指针添加到 std::map
- 将 char* 推送到矢量时出现问题,但在每次迭代后,它会将指向相同值缓冲区的指针添加到矢量中
- 将对象指针添加到向量后的值更改
- 将指针添加到成员对象中的指针动态阵列
- 需要一些关于使用指针添加C++数组的建议
- 如何将函数指针添加到现有va_list
- 为什么对象属性的值在 c++ 中将其指针添加到映射后返回零
- 将对象指针添加到位于类内部的指向对象的指针向量
- 无法将对象上的指针添加到集合
- 将指针添加到不同命名空间中的类时出错
- 向无符号字符指针添加短int
- Delphi中的类型转换指针添加
- 如何将节点指针添加到矢量指针
- 我可以向数组指针添加元素吗
- 向指针添加"const"可以帮助优化吗?
- 向函数指针添加constness时会发生什么
- 向指针添加偏移量
- 为什么使用std::next而不是向指针添加整数
- 无法将指针添加到类指针向量数组