STL Set比较类的问题
我有一组 ID,例如 {3,7,1,5}。当 table[7] < 时,我想在 1 之前有 7。表[1]。我是这样做的:
- 我有一个类(MyClass1),它有两个成员:向量表和operator()
- 当table[a] <时,operator()返回true。 另一个类(MyClass2)中的表[b]
- 我已经设置了<无符号整数,MyClass1> MySet1
- 我在 MyClass2 的成员中使用 MySet1.insert()
但是......似乎运算符()无权访问表,因为 table[a] 或 table[b] 导致段错误,并且 table.size() 总是返回 0(当然,即使表不为空)。
我应该怎么办?
I have a set with IDs, for example {3,7,1,5}. I'd like to have 7 before 1, when table[7] < table[1]. I've done it this way:
- I have a class (MyClass1), which has two members: vector table and operator()
- operator() returns true, when table[a] < table[b]
- in another class (MyClass2) i have set < unsigned int, MyClass1 > MySet1
- I use MySet1.insert() inside members of MyClass2
But... seems that an operator() doesn't have access to table, because table[a] or table[b] causes segfault, and table.size() always return 0 (even when table is not empty of course).
What should I do?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
也许这个小样本有帮助
Perhaps this little sample helps