我的代码看起来像这样:
class A
{
//some code here
}
//Class B contains an array of elements of type A
class B
{
//...
private:
A private_array[1000];
}
// This function gives a score of A.
// For reasons I can't explain now, it
// can't be a method of class A
int score( A& element)
{
//....
}
我想使用std::sort
通过score()
函数对b.private_array
进行排序,但我不能,因为它是私有的(我不想将它公开)。这有什么办法解决吗?
编辑:我解决了。这是我的解决方案:我在B中有两个公共方法begin和end
A* begin()
{
return private_array;
}
A* end()
{
return private_array + 1000;
}
然后我只是将这些方法传递给std::sort。
我想这会解决你的问题。
我们可以访问类的私有数据成员而不使用成员或朋友函数吗?
正如我的问题所描述的,如何在java中对类型数组的列表进行排序? 这是我的ListClass 这是我的驾驶程序 现在,我希望在ListClass中有一个通用排序方法,可以对通过驱动程序生成的任何类型的列表(字符串、整数、双精度、浮点等)进行排序。
我知道关于这个问题有很多答案。我试着跟随它,但它不会显示我想要的结果。有一个 输入 603 502 201 402 303 301 我希望 输出 60 3 50 2 40 2 30 3 30 1 20 1 但是如果我打印优先级队列,它将显示 60 3 50 2 40 2 20 1 30 3 30 1 我不知道为什么。。 下面是我的代码
本文向大家介绍javascript sort()对数组中的元素进行排序详解,包括了javascript sort()对数组中的元素进行排序详解的使用技巧和注意事项,需要的朋友参考一下 javascript sort()可以对数组中的元素进行排序, 语法格式:arrayObject.sort(sortby) arrayObject是数组对象,sortby为可选项,用来确定元素顺序的函数的名称,如果这
是的,这是家庭作业,但我一直在想什么。comparator类应该实现java。util。sort()方法的第二个参数应该是我的Comparator类的一个实例。 到目前为止,我的comparator类如下所示: 我有一个单独的方法对数组进行排序,但此方法使用compareTo() 除了使用单独的comparator类之外,我应该使用什么方法?我完全不知道该怎么办。 我的Rational类看起来像:
问题内容: 我的数组不包含任何字符串。但是它包含对象引用。每个对象引用都通过toString方法返回名称,id,作者和发布者。 现在,我需要按名称对对象数组进行排序。我知道如何排序,但是我不知道如何从对象中提取名称并对它们进行排序。 问题答案: 你有两种方法可以使用Arrays实用程序类 实现一个Comparator并将数组与比较器一起传递给sort方法,该方法将其作为第二个参数。 在对象所属的类
我有一个名为map的HashMap,它将字符存储为键,将整数存储为值,然后使用以下代码将其存储到名为entries的ArrayList中: 现在我正在尝试根据整数值而不是键对这些条目进行排序。我试图使用一个lambda表达式来实现比较器接口,但它不起作用。这是我的代码: 以下是我得到的错误: 这一行有多个标记 > 语法错误,插入“)”以完成表达式 类型集合中的方法sort(列表,比较器)不适用于参