注意:答案是按照特定的顺序给出的,但由于许多用户根据投票而不是给出的时间对答案进行排序,因此这里是答案的索引,它们是最有意义的顺序:
(注意:这是Stack Overflow的C++常见问题解答的一个条目.如果你想批评在这种形式下提供常见问题解答的想法,那么发布所有这些的元数据的发布将是这样做的地方.这个问题在C++聊天室中受到监控,其中FAQ的想法一开始就出现了,所以你的答案很可能被那些提出想法的人阅读.)
我有一堂课(摘录):
\n\nclass Package\n{\nprivate:\n string s_package_name;\n float f_boottime;\n float f_bytesize;\n list <Package> l_depends;\n list <Package> l_selects;\n}\nRun Code Online (Sandbox Code Playgroud)\n\n我想生成许多对象并将它们列出在一个唯一的“数组”中,因此我添加了set如下对象:
set<Package> l_tempSet; \nPackage PackageA(1, 11, "what a package");\nPackage PackageB(2, 22, "what a 2nd package");\n\nl_tempSet.insert(PackageA);\nl_tempSet.insert(PackageB);\nRun Code Online (Sandbox Code Playgroud)\n\n编译时我收到一条错误消息:
\n\n\n\n\n与 \xc2\xbboperator<\xc2\xab 不匹配(操作数类型为 \xc2\xbbconst Package\xc2\xab 和 \xc2\xbbconst\n Package\xc2\xab)
\n
当单击错误消息时,它会将我指向 set.h 到unique调用的行,我认为这就是错误。
C++ 是否真的无法将“唯一”对象(如本示例中所示)放入列表和集合中,并且只能处理简单的数据类型(如 int、float 等)?或者我在某个地方出错了,请帮助我,我不确定错误到底在哪里。
\n\n感谢您的支持
\n