![]() |
1
7
这完全取决于你和你希望人们如何自然分类。如果你想让个子矮的人先来,但如果他们的身高相同,那么瘦子比高的人先来:
如果您想测量一个人的表面积来确定排序:
|
![]() |
2
1
取决于您想要排列/排序人员实例的方式。一个例子是
即先看高度(先按最短的排列),如果高度相同,先看宽度,再按较窄的排列。 |
![]() |
3
1
我的样板操作方法:
但考虑使用typedef
这有点无意义地使用所有可用的数据对事物进行排序。(如果宽度相等,则先按宽度排序,然后按高度排序。)如果只使用顺序查找相同的元素,则这可能是您想要的。 |
![]() |
4
1
为了将类放入集合中,还需要注意operator==。有了类中的数据,我认为您不能定义一个好的运算符==。或者你的意思是两个宽度和高度相同的人是一样的?我将添加一些唯一的标识符,以便为人员定义完整的订单。 如果你没有更多的信息,你可以使用字典顺序上指出的另一个答案。 但不要使用区域对其排序,否则需要根据区域定义相等,然后(4,5)==(5,4)才能获得完整的顺序。我想你不想那样。注意如果!(4,5)<(5,4))和(4,5)!=(5,4),我们可以推断(5,4)<(4,5),这也是错误的。 如果不使用集合的有序性质,可以考虑使用无序集合或哈希表。但在任何情况下,您都需要处理operator==。 |
![]() |
AstralHex · 矩阵乘法代码工作不正常 4 月前 |
![]() |
Fishie · 作为类成员的智能指针是否仍然自动释放?[关闭] 4 月前 |
![]() |
Die4Toast · 递归调用成员箭头运算符-> 4 月前 |
![]() |
Anka Hanım · 关于结构和动态数组地址的问题 4 月前 |