C++问题。关于容器和类的实例
A* a = new A(x,y);
set<A> aset;
aSet.insert(a);
我这样做了。出现错误。我应该如何修复它?
谢谢你!!!
A* a = new A(x,y);
set<A> aset;
aSet.insert(a);
I did this. Got an error. How should I fix it?
Thank you!!!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
aset 是 A 的集合,而不是指向 A 的指针的集合。所以要么是
要么,
但不认为后者有太多意义。
aset is a set of A, not of pointers to A. So either
or
but don't think the later makes too much sense.
您尝试将指向
A
的指针插入集合中,但该集合被声明为直接采用A
。您必须更改集合以存储指针:
或创建一个实例,而不是指向实例的指针:
You're trying to insert a pointer to an
A
into your set, but the set is declared as takingA
s directly.You must either change your set to store pointers:
or create an instance, rather than a pointer to an instance: