class Atraccion
{
private:
string Nombre;
int popularidad;
public:
Atraccion(){}
void setNombre(string nom)
{
Nombre=nom;
}
string getNombre()
{
return Nombre;
}
void setPopularidad(int popu)
{
popularidad=popu;
}
int getPopularidad()
{
return popularidad;
}
};
Atraccion Atracciones[99999];
void Quicksort(int li, int ls)
{
int i = li;
int j = ls-1;
int tmp,a, b;
int indice=(li+ls)/2;
int p=Atracciones[indice].getPopularidad();
while (i <= j)
{
while ((Atracciones[i].getPopularidad())< p) i++;
while ((Atracciones[j].getPopularidad())> p) j--;
if (i <= j)
{
tmp = Atracciones[i].getPopularidad();
Atracciones[i].setPopularidad(tmp);
Atracciones[i].setPopularidad(Atracciones[j].getPopularidad()) =
Atracciones[j].setPopularidad(Atracciones[i].getPopularidad());
Atracciones[j].getPopularidad() = tmp;
Atracciones[j].setPopularidad(tmp);
i++; j--;
}
}
if (li < j)
Quicksort(li, j);
if (i < ls)
Quicksort(i, ls);
}
当我把set作为参数函数时,get告诉我,我误用了虚空,我怎么能花费作为参数设置?我有这个问题,找不到解决方案
问题出在这里
Atracciones[i].setPopularidad(Atracciones[j].getPopularidad()) = Atracciones[j].setPopularidad(Atracciones[i].getPopularidad());
在此分配中
我尝试做一个快速排序
答案 0 :(得分:1)
Atracciones[j].setPopularidad(Atracciones[i].getPopularidad());
将返回一个void(setPopularidad返回void),因此您尝试将void分配给void void=void
并且无法执行此操作